¿Cómo puedo forzar a WP a verificar siempre la carpeta del tema secundario primero cuando se ejecuta get_template_part
?
Ejemplo: cargas temáticos niño get_template_part('content', 'inventory')
en single.php
. Debido a que todos los temas secundarios (y hay muchos) comparten la misma base de plantilla de inventario común, el archivo content-inventory.php
está en el tema principal. Hasta aquí todo bien.
Me gustaría agregar una pequeña sección a dicha plantilla de inventario que será única para cada tema secundario. Agregar get_template_part('content', 'inventory-special')
en content-inventory.php
no comprobará primero el directorio del tema hijo.
get-template-part
m-torin
fuente
fuente
Respuestas:
Lo hace, por defecto. La
get_template_part()
función utilizalocate_template()
qué cascadas a través de los archivos de plantilla en orden de especificidad y estilos sheetpath / templatepath.Entonces, si su Tema Infantil incluye un
content-inventory.php
, entoncesget_template_part()
lo incluirá; si no, entonces buscarácontent-inventory.php
en el Tema principal. Si no lo encuentra, buscarácontent.php
primero en el niño, luego en el padre.EDITAR:
Intentando entender lo que quieres decir; por favor aclare si estoy malentendido ...
Desea incluir un nuevo archivo de parte de plantilla dentro de un archivo de plantilla de Tema principal llamado
content-inventory.php
, ¿verdad?La única forma, AFAIK, de que puedes hacer eso es copiarlo
content-inventory.php
en tu Tema Infantil y luego agregar la nuevaget_template_part()
llamada donde sea necesario.Si
content-inventory.php
se incluye un archivo nombrado tanto en el Tema principal como en el Tema secundario, WordPress siempre usará la versión del Tema secundario, si se incluyeget_template_part()
.fuente
content-inventory.php
. El Codex y la experiencia simple lo dejan claro. Sin embargo, si el archivo que se busca (nivel 2) está en la carpeta del tema principal, WP no vuelve a verificar el tema secundario para unget_template_part
contenido dentro del archivo que se busca (una inclusión de tercer nivel). ¿Esto ha funcionado de manera diferente para ti?get_template_part()
hace esto por defecto.fuente