¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. WordPress
  3. Las plantillas de página
Extrait - WordPress Desarrolle temas avanzados con PHP (teoría, ejercicios prácticos y recursos) (3ª edición)
Extractos del libro
WordPress Desarrolle temas avanzados con PHP (teoría, ejercicios prácticos y recursos) (3ª edición) Volver a la página de compra del libro

Las plantillas de página

¿Qué es una plantilla de página?

Una plantilla de página permite la visualización de las páginas del sitio web (page.php, sidebar.php, archive.php, etc.) que componen los temas. Pero WordPress también le permite agregar sus propias plantillas de página, agregando sus propios archivos PHP.

Las plantillas de página personalizadas se pueden basar en archivos existentes del temas o no, usted es completamente libre en cuanto a su contenido.

WordPress permite la adición de diferentes tipos de plantillas de página: para el inicio, páginas (page.php), páginas individuales (single.php), archivos (archive.php), categorías (category.php), etiquetas (tag.php), autores (author.php), etc.

Una plantilla de página le permite tener una disposición particular y así cambiar completamente el diseño.

WordPress muestra ciertas plantillas de página según una jerarquía relativa al nombre del archivo PHP.

Por ejemplo, si en algunas páginas desea mostrar una barra lateral y en otra página no la desea, puede usar dos tipos diferentes de plantillas de página. Esto hace posible ofrecer temas flexibles para usuarios nuevos en PHP.

Con los temas basados en bloques, ha nacido una manera nueva de integrar plantillas de página. También explicaremos con detalle este funcionamiento nuevo.

Crear plantillas de página para el inicio

Dependiendo de lo que necesite mostrar, WordPress busca en el directorio de temas y usa el primer archivo de plantilla que encuentra de acuerdo con la lista que puede ver a continuación:

  • home.php mostrará la página de inicio para el blog,

  • front-page.php permitirá mostrar la página de inicio de un sitio estático.

Esto, dependiendo de la configuración definida en la administración Ajustes - Lectura.

Si estos archivos no existen, WordPress busca un archivo llamado index.php en el directorio del tema y luego lo usa para generar la página de inicio. Sin embargo, puede crear estos archivos si no existen.

Otro método es definir una página de inicio específica en la administración Ajustes - Lectura y luego crear una plantilla de página para la sección Atributos de página, específica para la página de inicio.

Crear una plantilla de página con la sección Resumen - Plantilla

Seleccione plantillas en administración de las páginas o de los artículos (para los temas basados en bloques) usando la sección Resumen - Plantilla.

Las plantillas de página se pueden incluir de base en los temas, como para el tema Twenty Twenty de WordPress, pero algunos temas no las usan, como los temas Twenty Twenty-One, Twenty Nineteen, Twenty Seventeen, Twenty Sixteen y Twenty Fifteen de WordPress. Con los temas Twenty Twenty-Two y Twenty Twenty-Three, que están basados en bloques, la forma de proceder es ligeramente distinta.

images/08_001.png

Sección Resumen - Plantilla del tema Twenty Twenty-Three

Crear una plantilla de página para los temas clásicos

Cree un archivo PHP en la raíz del tema o en una carpeta específica (por ejemplo: plantillas de página) en el directorio de su tema. Dele el nombre que quiera.

Para orientarse más fácilmente, use el prefijo "template-", que da como resultado template-nombredetemplate.php.

Por ejemplo, el tema Twenty Twenty admite tres tipos de páginas: plantilla predeterminada, plantilla con banner y plantilla de ancho completo. Se corresponden con los archivos de la carpeta wp-content/themes/twentytwenty/templates. El archivo template-cover.php se corresponde con la plantilla con banner y el archivo template-full-width.php con la plantilla de ancho completo. La página predeterminada es el archivo page.php.

Una vez creado su archivo, edítelo y escriba en la parte superior del archivo, en un comentario PHP:

<?php 
/* 
Template Name: Nombre de template 
*/ 
?> 

Guarde los cambios. En la administración, cree o modifique una página, en la pestaña Páginas. El nombre de la plantilla aparece en la lista desplegable Plantilla, en la sección Atributos de página. A continuación, puede seleccionar y utilizar la plantilla de página.

Por ahora, la plantilla está vacía y muestra una página en blanco. No hay ninguna función...

Crear una plantilla de página para los temas basados en bloques

En la sección Resumen - Plantilla de las páginas o de las entradas de los temas basados en bloques, la plantilla predeterminada corresponde a la plantilla de página de los archivos HTML de la carpeta Template.

Para asignar plantillas personalizadas predeterminadas durante la instalación del tema, hay que configurar el archivo theme.json en la parte customTemplates.

Por ejemplo, para una plantilla llamada my-custom-template.html, el archivo theme.json puede declarar qué tipos de publicación pueden utilizar y qué título se mostrará al usuario.

  • name (obligatorio): nombre de la plantilla correspondiente al archivo HTML.

  • title (obligatorio): título que aparecerá para los usuarios en la sección Resumen - Plantilla. Este campo se puede traducir.

  • postTypes (opcional): enumera los tipos de página que pueden usar esta plantilla.

{ 
    "version": 2, 
    "customTemplates": [ 
        { 
            "name": "my-custom-template", 
            "title": "The template title", 
            "postTypes":...

Crear otras plantillas de página

Puede crear plantillas de página específicas, en función del identificador o del nombre clave de una página, categoría, etiqueta o autor. WordPress detectará automáticamente el archivo en función del identificador o del nombre clave y mostrará la plantilla de página en consecuencia.

Para ello, debe crear un archivo en la raíz del tema. Nómbrelo según el tipo de página:

  • page-{id}.php o page-{nombre-clave}.php

  • taxonomy-{nombre-de-taxonomía}.php

  • category-{id}.php o category-{nombre-clave}.php

  • tag-{id}.php o tag-{nombre-clave}.php

  • author-{id}.php o author-{nombre-clave}.php

Por ejemplo, para una página cuyo id es 6, el archivo se llamará "page-6.php"; para una página cuyo nombre clave es "quienes-somos-nosotros", el archivo se llamará "page-quienes-somos-nosotros.php".

También puede agregar plantillas de página para tipos de artículos personalizados (post_type), que se agregaron con la función de WordPress register_post_type() (consulte el capítulo Personalizar el sitio con el archivo functions.php - sección Añadir otros tipos de artículos).

WordPress detectará automáticamente el archivo según el nombre clave...

Jerarquía de los modelos de página

Aquí está la lista jerárquica que usa WordPress. Si el primer archivo no existe, WordPress buscará el siguiente.

Visualización de la página de inicio

1. home.php o front-page.php

2. index.php

Visualización de un artículo únicamente

1. single.php

2. index.php

Visualización de una página

1. La plantilla elegida al escribir la página desde el menú Plantilla de página (si se usa la opción).

2. page.php

3. index.php

Visualización de una categoría

1. category-{id}.php

2. category.php

3. archive.php

4. index.php

Visualización de un autor

1. author.php

2. archive.php

3. index.php

Visualización de una página fechada

1. date.php

2. archive.php

3. index.php

Visualización de resultados de búsqueda

1. search.php

2. index.php

Visualización de una página 404

1. 404.php

2. index.php

Visualización de los archivos adjuntos

1. image.php, video.php, audio.php, application.php o cualquier otro prefijo de tipo MIME

2. attachment.php

3. single.php

4. index.php