Mostrar shortcodes en la descripción de una página de categoría o archive

Yo soy muy fan de los shortcodes y los utilizo a menudo en mis proyectos, sin embargo, por defecto no funcionan en las descripciones de categorías, ya sean de entradas o de productos en WooCommerce. En este post veremos una forma sencilla de activarlos.


por

Yo soy muy fan de utilizar shortcodes en la web.

Básicamente, los shortcodes son fragmentos de código (pueden ser funciones, html o simple contenido) que se crean una vez y se pueden mostrar en cualquier parte de la web mediante una referencia entre corchetes [nombre_del_shortcode]

Muchos plugins los utilizan, sin ir más lejos los de formularios, como el clásico Contact Form 7, te permite crear un tipo de formulario y luego insertarlo en cualquier parte de tu web mediante un shortcode tipo

[contact-form-7 id="1" title="Formulario Contacto"]

Bien, en este caso quería utilizar shortcodes para mostrar una información adicional en algunas páginas de categorías de producto de una tienda online con WooCommerce. Si hubiese sido en todas ellas, quizás era más fácil modificar directamente el archivo de plantilla de ese tipo de página, pero como era sólo en unas determinadas, quise hacerlo con un shortcode, pero al ponerlo en el campo de ‘Archive description’, no se mostraba.

Buscando una solución encontré una función para solucionarlo, que en mi caso no funcionaba al tratarse de una web que usaba Genesis Framework, así que buscando encontré la solución específica para estos casos.

Os dejo ambos códigos por si necesitaís alguno de los dos:

 

Opción A: genérica para activar shortcodes en la descripción de categorías o etiquetas

add_filter( 'term_description', 'do_shortcode' );

 

Opción B: ejemplos para Genesis Framework

//Para custom post types
add_filter( 'genesis_cpt_archive_intro_text_output', 'do_shortcode' );
// Para archivos de autor
add_filter( 'genesis_author_intro_text_output', 'do_shortcode' );
// Para categorías y etiquetas 
add_filter( 'genesis_term_intro_text_output', 'do_shortcode' );

 

Aunque se que es algo muy concreto que quizás no vayas a necesitar, nunca está de más compartirlo por si os encontráis en un caso parecido.

 

¿Eres implementador o desarrollador WordPress?

En la Zona DPW encontrarás más recursos, tutoriales, plantillas, y una biblioteca de snippets para poder utilizar en tu día a día y ganar tiempo en tu trabajo:

ACCEDER AHORA

 

Comentarios

2 respuestas a «Mostrar shortcodes en la descripción de una página de categoría o archive»

  1. Avatar de Yesica

    |

    Hola Esther, soy Yésica. Genial tu post, porque diste en el clavo justo con lo que estaba buscando; mostrar un shortcode en la descripción de la categoría… ya me estaba volviendo loca. Estoy creando mi primera web (https://cubasespain.com/) y he aplicado la opción A, genérica, y sí, hace que el shortcode funcione en la descripción de la categoría, pero también se ve el código en sí en el front-end: add_filter( ‘term_description’, ‘do_shortcode’ ); ¿Cómo hago para que mis visitantes no vean ese código? Quizá es una tontería, pero es que aún no controlo mucho

    1. Avatar de esther

      |

      Hola Yesica,
      El snippet debes añadirlo en el archivo functions.php del tema o tema hijo que estés utilizando o en un plugin de códigos, así funcionará sin verse. En este artículo tienes más información de cómo hacerlo: Cuando realizar las modificaciones en functions.php y cuando usar un plugin

      Saludos!