Imagina esta situación. Tú o tu cliente compráis un tema para WordPress, modificáis y adaptáis el tema a vuestro gusto para impresionar a vuestros clientes. Unos cambios de CSS, y pequeño cambio en una plantilla y está listo.
A las dos semanas se actualiza el tema por parte del desarrollador y ¡perdéis todos los cambios!
Efectivamente, cuando un theme de WordPress se actualiza los nuevos archivos reemplazan a los antiguos, eliminando cualquier cambio o modificación que hayas realizado.
¿Cómo modificar themes de WordPress de forma segura?
Para evitar entre otras cosas que esto ocurra, siempre debemos usar child themes para modificar cualquier theme de WordPress. Ya sea porque vamos a añadir un nuevo CSS al theme, o porque vamos a editar alguna clase ya existente usando child themes nos aseguramos que esos cambios perduran aunque el theme se actualice.
Creando un child theme para WordPress
Para crear un child theme sólo tenemos que añadir a nuestro directorio de temas en wp-content/themes
una nueva carpeta que contiene dos archivos:
1.- Crea los archivos necesarios:
- una carpeta cuyo nombre sea la del tema que queremos editar seguido de
-child
- un archivo
functions.php
- un archivo CSS
style.css
2.- Añade la cabecera a tu CSS:
Copia el encabezado del style.css del tema padre y añade una línea indicando cuál es el text domain
. En el ejemplo que estamos haciendo el tema padre se llama «themebase». Aquí usa el nombre de la carpeta que hayas creado.
Text Domain: themebase-child
Debe quedar un encabezado similar a este, pero con los datos de tu tema padre más tu línea añadida:
/* Theme Name: Twenty Fifteen Child Theme URI: http://example.com/twenty-fifteen-child/ Description: Twenty Fifteen Child Theme Author: John Doe Author URI: http://example.com Template: twentyfifteen Version: 1.0.0 License: GNU General Public License v2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Tags: light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready Text Domain: twenty-fifteen-child */
3.- Registramos y añadimos nuestro CSS a «la cola»
Como ya vimos en otra píldora, tenemos que añadir nuestro CSS a la cola de WordPress. Esto lo hacemos de la siguiente forma:
<?php function my_theme_enqueue_styles() { wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' ); } add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' ); ?>
4.- Activamos nuestro Child Theme
Ya tenemos nuestro child theme listo para ser activado y usado. Simplemente desde Apariencia / Temas, lo seleccionamos y activamos.
Es importante tener en cuenta que nuestro child theme depende de su tema padre. Es decir, si eliminamos el tema padre, nuestro child theme dejará de funcionar.