¡Cómo crear un tema secundario de WordPress y por qué probablemente querrá hacerlo!

Uno de los mayores beneficios de usar WordPress es la capacidad de aprovechar una gran cantidad de temas listos para usar, todos los cuales pueden ser personalizados por los usuarios con relativa facilidad. Pero con toda esa personalización viene la cuestión del mantenimiento: ¿qué sucede si realiza sus personalizaciones y luego se actualiza el tema que está utilizando?

Esta es una pregunta que muchos usuarios terminan aprendiendo la respuesta de la manera difícil: si actualiza un tema después de haber realizado personalizaciones, todos los cambios que haya realizado en los archivos del tema original se sobrescribirán, y si usted no hizo una copia de seguridad de su sitio (y debería SIEMPRE asegúrese de tener una copia de seguridad completa antes de realizar cualquier cambio), entonces todo ese trabajo duro se perderá. *

Para evitar este trágico escenario, hay una cosa que todo usuario de WordPress debe hacer: crear (y usar) temas secundarios en cada instalación de WordPress.

¿Qué es un tema infantil? ¿Cómo funciona?

Un tema secundario de WordPress no es más que un tema separado que se basa en su tema principal para la mayoría (si no todas) de su funcionalidad. En su forma más básica, un tema secundario es solo una hoja de estilo CSS separada que WordPress muestra en lugar de los estilos del tema principal. Esto le permite realizar cambios en su tema sin perder el estilo personalizado que ha creado cada vez que se actualiza el tema principal.

Los temas secundarios más complejos también pueden incluir funciones adicionales. Al igual que con los elementos de diseño, WordPress comprobará primero las funciones del tema hijo. Si no se encuentra ninguno, se utilizarán de forma predeterminada las funciones del tema principal. Si hay funciones, las funciones del tema hijo se utilizarán en lugar de, o además de, las del tema padre.

Cómo crear un tema hijo de WordPress

Espero que a esta altura te haya convencido de que los temas infantiles son muy necesarios. Por supuesto, eso no significa que no sean intimidantes para algunas personas. Pero hay buenas noticias: un tema hijo de WordPress es extremadamente fácil de crear.

La estructura / jerarquía del tema infantil de WordPress

El primer paso para crear manualmente un tema hijo de WordPress es acceder a su directorio de temas en wp-content / themes. Puede hacerlo a través de un cliente FTP o, en muchos casos, a través de una interfaz proporcionada por su servicio de alojamiento.

A continuación, deberá crear un nuevo directorio para su tema hijo. Puedes nombrarlo como quieras. Recomendaría mantenerlo simple y fácilmente comprensible. Algo como themename-child debería hacer bien.

El archivo CSS personalizado más importante (obligatorio)

Una vez que haya completado esos dos pasos, es hora de agregar (como mínimo) la hoja de estilo CSS que definirá su tema hijo. Para hacer eso, simplemente cree un archivo de texto (usando un editor de texto apropiado, por supuesto) llamado style.css, y copie y pegue el siguiente código en él:

/*
Theme Name: Twenty Thirteen Child
Theme URI: http://example.com/twenty-thirteen-child/
Description: Twenty Thirteen Child Theme
Author: John Doe
Author URI: http://example.com
Template: twentythirteen
Version: 1.0.0
*/

@import url("../twentythirteen/style.css");

/* =Theme customization starts here
-------------------------------------------------------- */

Querrá cambiar la información anterior para reflejar los archivos con los que está trabajando realmente, y es extremadamente importante para asegurarse de que las secciones ‘Plantilla’ y ‘@importar’ sean correctas en este paso. Recuerde: ¡Todo es sensible a mayúsculas y minúsculas!

Una vez que haya ajustado la información anterior para reflejar sus datos específicos, puede continuar e ingresar las personalizaciones de su tema CSS en el espacio provisto y guardar el archivo. Tada! Acaba de crear un tema hijo. ¡Felicidades!

Para activar su nuevo tema hijo, todo lo que tiene que hacer es comprimir la carpeta del tema hijo que ha creado (la que contiene el archivo CSS anterior) e instalarlo a través de Apariciones> Temas en su administrador de WordPress, como lo haría con cualquier otro tema de WordPress. Alternativamente, puede dejarlo descomprimido y cargarlo en su directorio de temas usando un cliente FTP.

Pero digamos que le gustaría crear un tema hijo un poco más complejo, uno que vaya más allá de las meras personalizaciones de CSS. ¿Cómo haría para agregar funciones PHP personalizadas o alterar archivos de tema o plantillas reales?

Edición del archivo Functions.php (opcional)

En el caso de editar el archivo functions.php de su tema, simplemente cree un nuevo archivo functions.php como el siguiente, luego agréguelo a su tema hijo. Cualquier función dentro de este nuevo archivo anulará automáticamente las funciones en el archivo de su tema principal. Todo lo que no se especifique en este nuevo archivo simplemente se volverá predeterminado al original.

<?php
// your code goes here
?>

Edición de archivos de plantilla (opcional)

Editar archivos de plantilla PHP es un poco diferente a editar estilos y funciones CSS. En los dos ejemplos anteriores, todo lo que tenía que hacer era crear archivos que albergaran sus adiciones y / o cambios primordiales. En ambos casos, los nuevos archivos en el tema hijo eran más o menos complementarios a los archivos en el tema padre, pero cuando se trata de archivos de plantilla PHP, debe reemplazar todo el contenido del original con un nuevo archivo en su hijo. tema.

Esto se logra copiando la plantilla PHP que desea editar y luego colocándola en la misma ubicación del árbol de archivos en los archivos del tema secundario que ocupa en los archivos del tema principal. WordPress ahora ignorará por completo el original, y cualquier cambio que realice en el archivo duplicado en el tema hijo será lo que WordPress realmente use.

Sin embargo, tenga en cuenta que solo desea agregar archivos a su tema hijo en los que realmente desea realizar cambios, es decir, no vaya a copiar innecesariamente una gran cantidad de archivos. Esto se debe a que cuando se actualiza el tema principal, es posible que, en algunos casos extremos, deba asegurarse de que no haya actualizaciones importantes para los archivos de plantilla que ha elegido editar y / o incluir.

Entonces, ¿por qué no todos usan temas infantiles?

Aparte de que las personas simplemente no son conscientes de la necesidad de crear un tema hijo, las únicas razones realmente buenas no crear / usar temas secundarios se deben a que no tiene la intención de realizar ningún cambio en los archivos del tema (lo que significa que puede simplemente usar su tema exactamente como lo hizo el desarrollador) o el tema que está usando proporciona una interfaz especial en sus opciones de tema dentro de la cual hacer (y guarde) todos los cambios que necesite. Vale la pena señalar que muchos temas proporcionan una interfaz para realizar cambios CSS personalizados, por ejemplo.

Otra razón (no tan justificable) para no usar un tema hijo es porque, si está buscando hacer algo más que cambios de CSS, casi invariablemente requerirá un poco (y a veces mucha) de familiaridad adicional con la forma se crea el tema principal original. Esto a menudo puede parecer una tarea ardua. Si esto le suena familiar, entonces probablemente estará en aguas profundas si su tema recibe una actualización crítica.

El mensaje para llevar

Suponiendo que tiene la intención de mantener su tema actualizado (lo cual es una muy buena idea), usar un tema hijo es una práctica recomendada esencial. ** Afortunadamente, es solo unos minutos de trabajo crear uno, así que, si no lo ha hecho ya, entonces ahora es el momento!

Notas, consejos y sugerencias

Si tiene problemas para realizar ediciones visuales, consulte nuestro artículo anterior sobre Dónde aprender CSS en línea

Para obtener más información sobre los temas secundarios de WordPress, asegúrese de consultar el Codex oficial de WordPress.

* En copias de seguridad: Hay mucho énfasis en hacer copias de seguridad. Incluso con una copia de seguridad, aún estará en aguas profundas cuando se trata de actualizar su tema si ha estado realizando ediciones directas en él, ya que es probable que aún deba aplicar la nueva actualización. Esto es especialmente cierto si esa actualización tiene algo que ver con reparar agujeros de seguridad recién descubiertos. A menos que de alguna manera pueda replicar todos los cambios que ha realizado, es posible que su copia de seguridad no sea realmente tan útil para salir de la situación.

** Sobre las mejores prácticas: Si aún no está convencido sobre el uso de temas infantiles, no confíe en mi palabra sobre el motivo. Tomemos como co-fundador de WordPress Matt Mullenweg‘s: «Los temas secundarios y un marco son la única forma en que debe construir su sitio de WordPress» – (dicho mientras hablaba del marco de Génesis).