¿Cómo creamos un Child Theme en WordPress?

Wordpress

Lo primero: ¿Por qué tenemos que crear un child theme (tema hijo) para nuestro tema principal de WordPress? Para que cada vez que haya una actualización del tema, no se nos borren todas las modificaciones que hayamos hecho.

Lo segundo: ¿Hay alguna pega al crear un child theme en WordPress? Bueno, podemos añadir algo de latencia a la carga del blog, pero creo que no es muy destacable.

Lo tercero: ¿Cómo creamos un Child Theme en WordPress? No es muy complicado. Estos son los pasos.

-Creamos un directorio en el directorio de temas de nuestro WordPress: wp-content/themes. Lo nomal es llamarlo como el tema original poniéndole al final un -child (nada de espacios y cosas raras)

En este directorio creamos un archivo llamado style.css, el único archivo obligatorio en nuestro tema hijo. Por ejemplo, si queremos hacer un child theme del tema por defecto de WordPress en 2014, Twenty Fouteen, deberíamos incluir en este archivo lo siguiente:

/*
 Theme Name:   Twenty Fourteen Child
 Theme URI:    http://example.com/twenty-fourteen-child/
 Description:  Twenty Fourteen Child Theme
 Author:       John Doe
 Author URI:   http://example.com
 Template:     twentyfourteen
 Version:      1.0.0
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  twenty-fourteen-child
*/

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

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

Donde podemos cambiar las lineas correspondientes para que se ajusten a nuestras preferencias. Las dos unicas lineas requeridas son Theme Name (nombre del nuevo tema) y Template (directorio donde reside el tema original).

¿Qué conseguimos con esta configuración? Todos los cambios incluidos en style.css se mantendrán en el diseño de nuestro blog al actualizar.

¿Podemos añadir más archivos en este directorio? Sí. Por ejemplo se suelen añadir header.php o functions.php, dos archivos donde solemos añadir bastantes cambios en nuestros temas. Simplemente habría que copiar el archivo original del tema en este directorio y automáticamente WordPress los considerara antes que el archivo original.

Ojo con functions.php, tiene que tener la siguiente estructura:

<?php //Opening PHP tag

// Custom Function to Include
function favicon_link() {
    echo '<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />' . "\n";
}
add_action( 'wp_head', 'favicon_link' );

?> //Closing PHP tag

Para activar el child theme solamente nos tenemos que dirigir a “Apariencia” en el menu de WordPress, y elegir el tema recien creado.

Fuente: WordPress