Cómo personalizar el tema de WordPress con un tema hijo
Spanish (Español) translation by Marilu (you can also view the original English article)
Así que tienes un tema de WordPress en tu sitio web, ya sea uno gratis o uno comercial, y quieres personalizarlo. Alguien te ha recomendado sabiamente que lo hagas "creando un tema hijo". Pero, ¿qué significa eso, y cómo lo haces?
¿Qué es un tema hijo?
El Codex de WordPress describe temas hijos como:
Un tema hijo de WordPress es un tema que hereda la funcionalidad de otro tema, llamado tema padre, y permite modificar o añadir la funcionalidad de ese tema padre. Un tema hijo es la forma más segura y fácil de modificar un tema existente, ya sea que se quieran hacer unos pequeños cambios o cambios extensos. En lugar de modificar los archivos de temas directamente, puede crear un tema secundario.
Esencialmente, un "tema hijo" es un tema de WordPress que se ejecuta junto con el tema original de WordPress, y anula las partes del mismo que tú especifiques sin cambiar realmente el tema original en sí.
¿Por qué usar un tema hijo?
Si tienes un tema de WordPress gratuito o comercial en tu sitio, es muy probable que quieras personalizarlo un poco para que se ajuste a tus necesidades específicas. Tal vez quieras ajustar algunos colores, añadir una barra lateral, hacer que algunos posts se muestren de forma diferente o cualquier otra cosa que se te ocurra.
Un día entras en tu tablero de administración de WordPress y ves que hay una actualización de tu tema. Tal vez arregle algún error del CSS, o un problema de seguridad del tema. Si haces clic en actualizar, y has personalizado los archivos del tema directamente, esa actualización va a sobrescribir tus cambios, y ¡BOOM! Ya no están. Tienes que hacer esos cambios de nuevo.
Usando un tema hijo, puedes actualizar el tema original todo lo que quieras, y los cambios son seguros. Es posible que algo en la actualización signifique que tengas que hacer un pequeño ajuste en el tema hijo también, ¡pero al menos no estás empezando de cero!
Ok, creo que lo quiero, pero ¿cómo lo hago?
Tu tema original, que llamaremos "tema padre" de ahora en adelante, vive en tu directorio /wp-content/themes/.
Como ejemplo, crearemos un tema hijo para el tema predeterminado de WordPress "Twenty Twelve".
Así que en este caso, para crear un tema hijo, creamos un nuevo directorio junto al directorio del tema "Twenty Twelve" llamado "twentytwelve-child".
Así:

Todo lo que este directorio necesita dentro para ser un tema hijo válido, es un archivo style.css con el siguiente contenido:
1 |
|
2 |
/*
|
3 |
Theme Name: Twenty Twelve Child
|
4 |
Theme URI: http://wp.tutsplus.com/
|
5 |
Description: Child theme for Twenty Twelve
|
6 |
Author: Japh
|
7 |
Author URI: http://wp.tutsplus.com/author/japh
|
8 |
Template: twentytwelve
|
9 |
Version: 1.0.0
|
10 |
*/
|
11 |
|
12 |
@import url("../twentytwelve/style.css"); |
Hay dos partes importantes allí:
-
Template: twentytwelveque le dice a WordPress que este tema es un tema hijo del tema "Twenty Twelve". -
@import url("../twentytwelve/style.css");que carga el tema padre (twentytwelveen este caso) style.css como punto de partida
Ahora puedes entrar a tu tablero de control de WordPress y ver tu tema 'Twenty Twelve Child' allí, y activarlo.
Nota:
Como se señala en los comentarios de abajo, la línea @import no es estrictamente necesaria para que un tema hijo sea válido. Lo he incluido aquí como en la mayoría de las pequeñas modificaciones de un tema, querrás usarlo. Para reemplazar el CSS en un tema, puedes dejar esa línea fuera y empezar de cero.
¡Genial, mi propio tema hijo! ¿Y ahora qué?
Ahora, cuando quieras hacer una personalización de tu tema, hazlo en tu tema hijo.
Los archivos en el tema hijo anulan los archivos del mismo nombre en el tema padre. Así que cualquier archivo del tema principal que quieras cambiar, cópialo primero en el tema secundario y haz las modificaciones allí.
Lo mismo ocurre con cualquier plantilla que no esté en tu tema principal. Puedes añadirlas en tu tema hijo, y WordPress las usará.
Una excepción a estas reglas es el archivo functions.php. En este caso, se carga primero el archivo functions.php del tema hijo, seguido del archivo functions.php del tema padre. Así que no hay necesidad de copiar el archivo functions.php del padre al hijo, solo hay que empezar de nuevo en el tema hijo para eso.
Esto permite que el tema hijo tenga toda la funcionalidad del tema padre. Los temas padres también pueden hacer que sus funciones sean conectables, lo que permite que un tema hijo las anule.
¿Qué es una función conectable?
Esencialmente, una función conectable es aquella que comprueba si ya existe antes de ser definida. De esa manera, si el tema hijo define una función con el mismo nombre, el tema padre no crea un conflicto.
Resumen
Eso es lo básico de la personalización del tema de WordPress usando un tema hijo. En realidad no es más difícil que editar el tema original directamente, pero puede ahorrar muchos dolores de cabeza a la hora de actualizarlo. También hace que sea muy fácil para ti ver exactamente lo que has cambiado, porque todo está muy bien compartimentado.
Puedes encontrar más lecturas sobre temas hijo aquí en Wptuts+ también.
¿Tienes algún consejo especial para la personalización con temas hijo? ¡Cuéntanos en los comentarios!



