Jerarquía de plantillas: decidir qué archivo renderiza cada vista

Aprende a diagnosticar rápidamente qué template usa WordPress en cada URL y cómo intervenir sin romper otras vistas.

La jerarquía de plantillas es uno de los puntos donde más tiempo se pierde cuando no se domina: parece que WordPress ignora tus cambios, pero en realidad está cargando otro archivo con mayor prioridad.

Si sabes leer esa jerarquía, puedes corregir vistas concretas (single, archive, category, search, 404) sin tocar partes que ya funcionan.

Esta lección está enfocada a decisiones prácticas: qué archivo crear, cuándo conviene especializarlo y cuándo no.

También trabajaremos cómo evitar duplicación innecesaria para que el tema siga mantenible cuando crece.

  • WordPress intenta archivos de más específico a más genérico hasta encontrar uno válido.
  • Por ejemplo, en un post individual de tipo post, WordPress buscará primero plantillas específicas y acabará en single.php o index.php si no hay otras.
  • En categorías, puede usar category-slug.php, category-ID.php, category.php y como fallback archive.php o index.php.
  • No memorices toda la tabla de una vez: memoriza el patrón de especificidad y consulta documentación para cada caso.
  • Más específico = mayor prioridad.

Cómo funciona la prioridad real

WordPress intenta archivos de más específico a más genérico hasta encontrar uno válido.

Por ejemplo, en un post individual de tipo post, WordPress buscará primero plantillas específicas y acabará en single.php o index.php si no hay otras.

En categorías, puede usar category-slug.php, category-ID.php, category.php y como fallback archive.php o index.php.

No memorices toda la tabla de una vez: memoriza el patrón de especificidad y consulta documentación para cada caso.

  • Más específico = mayor prioridad.
  • Menos específico = fallback.
  • index.php es red de seguridad final.
  • Crear demasiadas plantillas específicas aumenta coste de mantenimiento.

Casos típicos de trabajo

Escenarios frecuentes donde la jerarquía te ahorra dolores de cabeza.

Estrategia para no duplicar código

Especializa solo donde aporta valor real.

Empieza con plantillas base robustas (single.php, archive.php, page.php) y añade especializaciones por necesidad concreta.

Extrae bloques compartidos con get_template_part() para no copiar markup en cada archivo especializado.

Cada nueva plantilla específica debe tener una razón documentada y una prueba visual asociada.

WordPress Themes Pro
07

Jerarquía de plantillas: decidir qué archivo renderiza cada vista

Aprende a diagnosticar rápidamente qué template usa WordPress en cada URL y cómo intervenir sin romper otras vistas.

Código del tema: get_template_part

📘 Teoría

Cómo funciona la prioridad real

WordPress intenta archivos de más específico a más genérico hasta encontrar uno válido.

Por ejemplo, en un post individual de tipo post, WordPress buscará primero plantillas específicas y acabará en single.php o index.php si no hay otras.

En categorías, puede usar category-slug.php, category-ID.php, category.php y como fallback archive.php o index.php.

No memorices toda la tabla de una vez: memoriza el patrón de especificidad y consulta documentación para cada caso.

  • Más específico = mayor prioridad.
  • Menos específico = fallback.
  • index.php es red de seguridad final.
  • Crear demasiadas plantillas específicas aumenta coste de mantenimiento.

Casos típicos de trabajo

Escenarios frecuentes donde la jerarquía te ahorra dolores de cabeza.

1

Landing de categoría

Necesitas diseño único para una categoría concreta.

  • Crear category-noticias.php si solo una categoría debe cambiar.
  • Mantener category.php genérica para el resto.
2

Tipo de contenido custom

Tienes CPT portfolio con vista individual distinta.

  • Usar single-portfolio.php para detalle.
  • Usar archive-portfolio.php para listado.
3

Búsqueda y 404

Vistas con impacto UX que suelen dejarse para el final.

  • search.php para resultados útiles y filtrables.
  • 404.php con navegación de recuperación, no solo mensaje de error.

Estrategia para no duplicar código

Especializa solo donde aporta valor real.

1

Empieza con plantillas base robustas (single.php, archive.php, page.php) y añade especializaciones por necesidad concreta.

2

Extrae bloques compartidos con get_template_part() para no copiar markup en cada archivo especializado.

3

Cada nueva plantilla específica debe tener una razón documentada y una prueba visual asociada.

Reuso con template parts
<?php
while (have_posts()) : the_post();
  get_template_part('template-parts/content', get_post_type());
endwhile;
?>

🧪 Aprende probando

Ejemplo Mapa mínimo de jerarquía por tipo de vista Guía rápida de resolución para diagnóstico diario.

🏁 Retos

Reto Reto: elegir el archivo correcto Para un CPT 'evento' en vista individual, escribe la plantilla de mayor prioridad.

🧰 Recursos

Test

Comprueba tus conocimientos con un test sobre WordPress Themes Pro.

Test de WordPress Themes Pro

¿Qué es esto?

Soy Cristian Eslava y a veces hago webs para procrastinar yo y vosotros 😉.

Esta la hice en febrero de 2026 para facilitar el aprendizaje de mis alumnxs. Aprender desarrollo web practicando. La idea es que crezca semanalmente con nuevos temas, tests y retos.

Inspirado en MDN, en W3Schools, en Codepen, en el crack de Manz y en mil sitios de documentación sobre desarrollo web. Quería aportar además de bloques teóricos con ejemplos, la gamificación de los retos y el sistema de test que ya tenía en culTest .

Si te gustó, si no te gustó, si quieres saludarme, o invitarme a 🍻 no dudes en escribirme en cristianeslava@gmail.com .