Cómo hacer un tema hijo de WordPress

Child Theme en WordPress

Voy a describir brevemente y sin demasiada explicación los pasos que se deben seguir para crear un tema hijo de WordPress. ¿Para qué lo hago de forma esquemática? Porque en general me como algún paso al hacerlo y quería crear un ayuda-memoria para tenerlo a mano.

Espero que les sirva y, en caso de que quisieran profundizar en el tema, les recomiendo que miren en YouTube el curso de WordPress desde cero de Daniel Sánchez.

Esquema

Los pasos son:

    1. Abrir el directorio de los temas de WordPress, que se encuentra en una ruta similar a la siguiente: /public_html/wp-content/themes/
    2. Crear un nuevo directorio con el nombre que se nos antoje, por ejemplo: awesome-tree-child
    3. Dentro de este directorio crear los archivos index.php y style.css.
    4. Copiar los comentarios del encabezado del archivo style.cssdel tema padre al mismo archivo del tema hijo.
    5. En dichos comentarios hay que agregar la opción Template: con el nombre del directorio del tema padre y luego de los comentarios también la importación de la URL del tema padre. Un ejemplo de este archivo podría ser el siguiente:
      /*
        Theme Name: awesome-tree-child
        Theme URI: http://themes.mauriciolopez.ml
        Description: Tema hijo personalizado del tema de WordPress Awesome Tree WordPress
        Author: Mauricio López Coria
        Author URI: https://mauriciolopez.dev/
        Version: 1.0
        Template: awesome-tree
        Text Domain: awesome-tree
        Domain Path: /languages
        
        License: GNU General Public License
        License URI: https://www.gnu.org/licenses/gpl-3.0.txt
      
        Tags: two-columns, custom-background, threaded-comments, translation-ready, custom-menu
      */
      
      @import url('../awesome-tree/style.css');
    6. Copiar el archivo index.phpdel tema padre en el mismo archivo del tema hijo.
    7. Opcionalmente, se puede crear también el archivo functions.php para agregar funcionalidad personalizada al tema hijo, pero esto no es imprescindible para que el tema hijo funcione.

Ocultar archivo debug.log en WordPress

Una opción que puede ayudar a visualizar errores o advertencias en el código de WordPress es la del registro de depuración o debug log que le indica a la aplicación generar un log que puede mostrado en las páginas o guardado en un archivo. Para habilitar este registro es necesario incluir en el archivo de configuración de WordPress wp-config.php el siguiente código:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

La primera línea habilita el registro de depuración, la siguiente activa la creación del archivo de registro debug.log que se situará dentro del directorio wp-content, mientras que la tercera opción especifica que estas advertencias no sean mostrados en las páginas del sitio.

El problema es que, de manera predeterminada, este archivo es visible públicamente. Lo que implica que cualquiera podría escribir la dirección http://midominio.com/wp-content/debug.log y visualizar el contenido del archivo exponiendo información sensible de nuestro sitio web, lo que supone un problema de seguridad.

Para evitar este acceso existe una manera muy sencilla: para el caso de que usés Apache como servidor web solo tenés que crear un archivo .htaccess, o agregar al existente, lo siguiente:

# Bloquear acceso a debug.log
<Files "debug.log">
    Order Allow,Deny
    Deny from all
</Files>