¿Personalizar un tema de WordPress sin cambiarlo?

19

He encontrado y descargado un tema. Sin embargo, quiero modificar un poco el CSS para cambiar un poco el diseño, los colores, etc. ¿Cómo debo hacer esto, sin dejar de actualizar el tema sin perder los cambios?

googletorp
fuente

Respuestas:

21

Si bien no puede modificarlo sin cambiarlo, puede aislar las partes que cambia creando un Tema secundario. En resumen:

  1. Cree un directorio de temas en pares con su tema "padre",
  2. Cree un style.cssarchivo en su nuevo directorio que tenga una Template:declaración en los comentarios nombrando su tema principal y @import url(../%parent-theme%/style.css)para importar el CSS del tema principal,
  3. Active su nuevo tema en la consola de administración de WordPress,
  4. Agregue nuevos archivos y / o copie archivos de su directorio de tema principal al directorio de tema secundario y modifíquelos según sus preferencias, y
  5. ¡Eso es!

Podría darle muchos más detalles, pero básicamente este tipo hace un muy buen trabajo al explicar Cómo crear un tema infantil, así que es mejor para mí solo para señalarlo.

Cuando desee actualizar el tema principal, simplemente actualice; dejará el tema de su hijo intacto. Por supuesto, el tema secundario puede no funcionar perfectamente si ha cambiado demasiado al padre y / o si copió y modificó los archivos de tema que actualizaron en la nueva versión, no obtendrá la nueva funcionalidad sin modificarlos también, pero es un mucho mejor de empezar de nuevo cada vez!

Espero que ayude.

MikeSchinkel
fuente
2
Los temas infantiles son el camino a seguir en mi humilde opinión
Ryan Gibbons
2

Si todo lo que desea cambiar es un pequeño CSS, puede crear un archivo CSS personalizado dentro del directorio de temas. Incluya su archivo css personalizado en el encabezado del tema y escriba nuevas declaraciones solo en el archivo css personalizado, sobrescribiendo así las declaraciones css predeterminadas del tema.

Hoja de estilo predeterminada

body{background:white;width: 960px;margin: 25px auto;}

Hoja de estilo personalizada

body{width:800px;}

Su navegador realizará llamadas http separadas para las dos hojas de estilo y aplicará los estilos en el orden en que aparecen. Cualquier declaración que se haga al final sobrescribirá las declaraciones hechas antes que ellas. Así que asegúrese de incluir su hoja de estilo personalizada después de que se incluyan otras hojas de estilo en header.php.

Si va a terminar cambiando archivos de plantilla como archive.php o page.php, la respuesta de MikeSchinkel le permitirá actualizar su tema si se lanza una nueva versión, sin perder sus modificaciones. Pero si todo lo que quiere es cambiar algo de CSS, este método funcionará bien. Solo asegúrese de guardar su hoja de estilo personalizada antes de actualizar el directorio de temas.

kevtrout
fuente
1
Esto puede ser problemático si el tema que modifica no es su tema, por lo que sus cambios podrían sobrescribirse en las actualizaciones del tema.
hakre
1

Definitivamente puedes crear un tema hijo. Un tema secundario mantiene su tema principal en su formato original.

Lo que personalmente hago es usar un tema premium de WordPress de MyThemeShop . En eso, mantengo mi archivo style.css y opciones de tema tal como está. Solo copio los datos del archivo a otro archivo y lo llamo un poco diferente. Por ejemplo, si estoy usando el tema SociallyViral, para crear su tema hijo, copiaré los datos de su archivo style.css y lo guardaré en otro archivo nombrándolo childstyle.css.

Después de esto, ahora diseñaré funciones específicas y puedo rediseñar mi tema agregando más funcionalidades en el archivo childstyle.css.

Esto mantiene mi archivo style.css original como está y me permite actualizarlo en el formato original.

Sumit Kumar
fuente
No estoy seguro de lo que quiere decir con "Copiaré los datos de su archivo style.css", pero por lo general es suficiente agregar solo esos estilos al tema secundario que son diferentes de los principales: los estilos del tema secundario se agregan a y / o anular los estilos de los padres. Por cierto: ¿cómo agrega algo su respuesta a la respuesta que ya fue aceptada hace más de 6 años ?
tillinberlin