Obtener el directorio del tema actual / WordPress

Ago
28

Obtener el directorio del tema actual / WordPress

En WordPress tenemos disponible la función get_template_directory() para obtener la ruta absoluta al directorio del tema que tenemos seleccionado. Es útil para incluir archivos, comprobar su existencia o escanear archivos de un directorio, entra otras cosas.

Uso de la función Get Template Directory

La ruta que obtenemos es la absoluta con respecto al directorio raíz de nuestro servidor, algo que no debemos confundir con la URL. Además es importante saber que el resultado no incluye la barra del final que suele incluirse en los directorio, algo que es útil saber a la hora de concatenar el resultado con otros nombres de archivo o carpeta. Un posible resultado, por ejemplo, podría ser el siguiente: /home/user/yo/public_html/wp-content/themes/mi_tema.

Por ejemplo, para imprimir por pantalla la ruta de nuestro tema:


echo get_template_directory();

También es habitual usar temas que dependen de otros, que son los llamados child themes. En este caso la función nos devolverá el directorio del tema padre del que depende el child theme. Si queremos obtener la ruta absoluta del child theme, que es en donde se suelen realizar las modificaciones visuales de un tema creado por terceros, debemos utilizar la función get_stylesheet_directory().

En caso de que queramos obtener la URL del directorio en donde se encuentra la hoja de estilos principal, debemos utilizar la función get_stylesheet_directory_uri().

Datos adicionales

La función get_template_directory() se encuentra en el archivo wp-includes/theme.php de WordPress.

En caso de querer obtener la ruta absoluta al directorio en el que se encuentran todos los temas debemos utilizar la función get_theme_root(). Para obtener el nombre del directorio del tema actual tenemos la función get_template().

Aquí podéis ver un listado de todas las referencias a urls y directorios en WordPress.

Acerca de EduZRO

Ingeniero técnico en informática, actualmente trabajo como desarrollador web y programador de videojuegos.

Escribe un comentario