Qué hacer para que WordPress muestre todos los tipos de contenido en listados de categorías

Por defecto, WordPress no muestra todos los tipos de contenido cuando genera un listado por categoría, sino solo las entradas, pero esto se puede cambiar.

Porque si, por ejemplo, tienes otros tipos de contenido y usan la misma categoría ¿por qué no mostrarlos también?

Esto me lo he encontrado hace poco en un proyecto en el que el cliente quería mostrar en los listados por categoría no solo las entradas, sino también los eventos de calendario y un tipo de contenido especial que tenía para mostrar actividades.

Afortunadamente tiene fácil solución, solo hay que crear una función que fuerce a que los listados por categoría muestren todo tipo de contenido que tenga asociada esa categoría.

El código es este:

//Mostrar todos los CPT en listados de categorías
function todos_cpt_en_archivos_categoria($request) {
 if ( isset($request['category_name']) )
  $request['post_type'] = 'any';
 return $request;
}
add_filter('request', 'todos_cpt_en_archivos_categoria');

Solo tienes que añadir el código anterior al archivo functions.php del tema activo o a un plugin.

VALORA Y COMPARTE ESTE ARTÍCULO PARA MEJORAR LA CALIDAD DEL BLOG…
(7 votos, promedio: 5)

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

2 comentarios en “Qué hacer para que WordPress muestre todos los tipos de contenido en listados de categorías”

  1. Antonio Roldan Ruiz

    Buenos días Fernando, gracias por tu aporte. Como siempre interesante. Un cuestión esta manera de mostrar información de un CPT y Divi. Divi en su módulo Blog sólo muestra las entradas y no muestra información de CPT. ¿Crees que lo que nos indicas en este artículo sería válido para que Divi mostrara información de CPT en el módulo Blog?

    Gracias.

  2. Pierre García Barre

    Hola para Divi hay que hacerlo por código corto, puedes hacer un plugin o meterlo en function, y luego meterlo en el módulo «código»

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

 

Ir arriba Ir al contenido