Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. WordPress
Code

Archivos de Taxonomía: Listar las Entradas según su Post Type

by
Difficulty:IntermediateLength:MediumLanguages:

Spanish (Español) translation by Eva Collados Pascual (you can also view the original English article)

Final product image
What You'll Be Creating

En un tutorial anterior, demostré cómo crear una plantilla de archivo para una taxonomía que listaste las entradas según el término de la taxonomía.

Este tutorial es similar en el sentido de que te muestra cómo separar las entradas en nuestros archivos, pero usa una estructura distinta y también una archivo de plantilla diferente. Te voy a enseñar ha crear una plantilla de archivo para una taxonomía que liste las entradas según que tipo de entradas sean, es decir, en base a su post type.

Esto podría ser útil en el caso de que hayas registrado un tipo de entrada que quieres mantener independiente del resto de entradas normales o de otro tipo de entrada concreta, pero seguir manteniendo una taxonomía válida para ambos tipos. Por ejemplo, si estás listando libros y artículos como tipos de entradas distintos, pero sigues teniendo temas comunes como taxonomía (por ej. ¡WordPress!).

En el ejemplo que voy a usar aquí, trabajaré con el tipo de entrada ‘animals’, tal y como hice en el anterior tutorial, pero esta vez también trabajaré con una entrada estándar. Listaré todos los animales usando el término de consulta y después listaré las entradas del blog con ese término.

1. Comienzo: Crear el Tema

Crearé un tema hijo para el tema twentyfourteen, de manera que si estás usando los archivos fuente de este tutorial también necesitarás tener instalado ese tema en tu sitio web. En la hoja de estilo de mi tema, añado lo siguiente:

Esto es todo lo que necesito para crear mi tema hijo. Si estás usando tu propio tema, puedes saltarte este paso.

2. Registrar el Tipo de Entrada y la Taxonomía

Nota: Si has seguido mi otro tutorial sobre la creación de una plantilla de archivo para una entrada personalizada, puedes usar el tema que creaste ya que usa el mismo tipo de entrada y taxonomía. Solo tendrás que hacer una pequeña modificación que te indicaré en esta sección, y añadir un nuevo archivo para el archivo de la taxonomía.

El siguiente paso consiste en registrar el tipo de entrada ‘animal’ y la taxonomía ‘animal family’. Crea un archivo functions.php para tu tema y añade en primer lugar la función para registrar el tipo de entrada:

Después, bajo este código, registra la taxonomía animal family.

Si estás trabajando con el tema que creamos en el tutorial anterior, tendrás que añadir array('animal,'post') en los argumentos de tu función, dirigido solo a ‘animal’.

Guarda el archivo de tus funciones y comprueba como ahora aparecen tu nuevo tipo de entrada y tu taxonomía en el área de administración de tu sitio web.

Ahora añade información – yo he añadido algunos animales y entradas en la familia ‘Canines’.

3. Crear una Plantilla de Archivo

Ahora crea un archivo llamado taxonomy-animal_cat.php. Será la planilla de archivo para la nueva taxonomía.

Copia el código para el elemento contenedor de tu tema en este archivo de manera que cuente con elementos y clases comunes con el resto de tu tema. Yo lo estoy copiando del tema twentyfourteen – si estás usando tu propio tema, cópialo de él. Copia todo excepto el encabezado y el loop, y añade algunos comentarios en la parte superior para recordar para qué sirve este archivo:

4. Identificar el Objeto de la Consulta

Para que puedas mostrar el nombre del término consultado y definir tus consultas en los dos loops que vas a crear, necesitas identificar el objeto de la consulta y guardarlo como variable.

Añade lo siguiente en algún lugar cerca de la parte superior de tu plantilla de archivo (yo lo estoy añadiendo bajo la llamada get_header())

Vas a estar usando esto en el siguiente paso.

5. Mostrar el Título para la Página de Archivo

Antes de añadir tus loops, tienes que dar salida al titular para tu página de archivo. Tras la apertura del div #content, añade el siguiente código:

6. El Primer Loop

Bajo el titular, tienes que añadir tu primer loop, usando WP_Query según necesites para definir los argumentos.

Primero define la consulta:

Advierte que esto emplea la variable $term que ya has definido.

Y después añade el loop, dando salida a un enlace para cada animal en una lista sin orden:

Es importante que aquí incluyas dos cosas:

  • Una comprobación de que la consulta tenga entradas – no querrás mostrar un encabezado que no contenga ningún listado debajo.
  • wp_reset_postdata() para resetear la consulta – siempre debes usar esto con WP_Query.

7. El Segundo Loop

El segundo loop es casi idéntico al primero a excepción de los argumentos de la consulta:

Ahora guarda el archivo de tu plantilla y previsualizalo. Deberías ver dos listas, una para los animales y la otra para las entradas:

Resumen

Así es como creas una página de archivo para una taxonomía que liste las entradas según el su tipo. Podrías extender esta técnica para hacer más interesantes tus páginas de archivo:

  • Variando el loop de manera que se muestre distinto contenido para cada tipo de entrada, por ejemplo mostrando una imagen destacada o un extracto para algunos tipos de entradas.
  • Añadiendo estilos distintos para cada tipo de entrada.
  • Cambiando el diseño de la página de manera que los archivos se sitúen unos al lado de otros o organizados en una retícula. Puedes ver un ejemplo de un sitio en el que hice esto en http://type-academy.co.uk/temperament-intro/
  • Adaptar esta técnica a una categoría o archivo de una etiqueta alterando los argumentos de tu consulta.

¡Estoy seguro de que se te pueden ocurrir muchas más posibilidades!

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.