¿Desea mostrar una lista de publicaciones relacionadas en su sitio web de WordPress y prefiere usar código en lugar de un plugin?
En WPBeginner, a menudo enfatizamos la importancia de involucrar a su audiencia y mantenerlos explorando su contenido. Una estrategia efectiva que hemos visto utilizada en innumerables sitios exitosos de WordPress es mostrar publicaciones relacionadas.
Cuando los visitantes de su blog terminan de leer un artículo que les interesa, ofrecer una lista de publicaciones relacionadas los mantendrá interesados y les ayudará a encontrar nuevo contenido para leer.
En este artículo, le mostraremos cómo mostrar publicaciones relacionadas con WordPress usando código, sin necesidad de un plugin.

¿Por qué mostrar publicaciones relacionadas en WordPress?
Cuando su blog de WordPress comienza a crecer, puede volverse más difícil para los usuarios encontrar otras publicaciones sobre el mismo tema.
Mostrar una lista de contenido relacionado al final de cada publicación de blog es una excelente manera de mantener a sus visitantes en su sitio web y aumentar las visitas a la página. También ayuda a mejorar la visibilidad de sus páginas más importantes al mostrar su mejor contenido donde las personas pueden encontrarlo fácilmente.
Si no estás familiarizado con el código, te resultará más sencillo elegir uno de los muchos plugins de publicaciones relacionadas para WordPress que pueden mostrar publicaciones relacionadas sin necesidad de código.
Pero, si alguna vez te has preguntado si puedes mostrar publicaciones relacionadas sin usar un plugin, compartiremos dos algoritmos diferentes que puedes usar para generar publicaciones relacionadas con miniaturas usando solo código:
- Método 1: Cómo mostrar publicaciones relacionadas en WordPress por etiquetas
- Método 2: Cómo mostrar publicaciones relacionadas en WordPress por categoría
- Guías expertas sobre publicaciones relacionadas en WordPress
Nota: Si deseas mostrar una miniatura con cada publicación relacionada, asegúrate de agregar primero una imagen destacada a esas publicaciones.
Método 1: Cómo mostrar publicaciones relacionadas en WordPress por etiquetas
Una forma eficiente de localizar contenido relacionado es buscar otras publicaciones que compartan las mismas etiquetas. Las etiquetas se usan a menudo para centrarse en los detalles específicos contenidos en una publicación.
Teniendo esto en cuenta, es posible que desees agregar algunas etiquetas comunes a las publicaciones que deseas relacionar entre sí. Puedes ingresarlas en el cuadro 'Etiquetas' en el editor de WordPress.

Después de haber agregado etiquetas a tus publicaciones, lo siguiente que debes hacer es agregar el siguiente fragmento de código a la plantilla single.php de tu tema.
Si necesitas ayuda para agregar código a tu sitio, consulta nuestra guía sobre cómo pegar fragmentos de la web en WordPress.
$orig_post = $post;
global $post;
$tags = wp_get_post_tags($post->ID);
if ($tags) {
$tag_ids = array();
foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;
$args=array(
'tag__in' => $tag_ids,
'post__not_in' => array($post->ID),
'posts_per_page'=>5, // Number of related posts that will be shown.
'ignore_sticky_posts'=>1
);
$my_query = new wp_query( $args );
if( $my_query->have_posts() ) {
echo '<div id="relatedposts"><h3>Related Posts</h3><ul>';
while( $my_query->have_posts() ) {
$my_query->the_post(); ?>
<li><div class="relatedthumb"><a href="<?php the_permalink()?>" rel="bookmark" title="<?php the_title(); ?>"><!--?php the_post_thumbnail(); ?--></a></div>
<div class="relatedcontent">
<h3><a href="<?php the_permalink()?>" rel="bookmark" title="<?php the_title(); ?>"><!--?php the_title(); ?--></a></h3>
<!--?php the_time('M j, Y') ?-->
</div>
</li>
<!--?php }
echo '</ul--></ul></div>';
}
}
$post = $orig_post;
wp_reset_query();
Este código busca etiquetas asociadas con una página y luego ejecuta una consulta a la base de datos para obtener páginas con etiquetas similares.
¿Dónde debes colocar el código? Eso depende de tu tema, pero en la mayoría de los casos, deberías poder pegar el código en la plantilla single.php de tu tema, después del post principal y justo antes de la sección de comentarios.
Si estás usando el tema Twenty Twenty-One, como nosotros en nuestro sitio de demostración, entonces un buen lugar para pegar el código es en el archivo template-parts/content/content-single.php después del encabezado y justo después de <?php the_content();.

Esto mostrará automáticamente contenido relacionado en cualquier post de WordPress.
Necesitarás cambiar el estilo y la apariencia de tus posts relacionados para que coincidan con tu tema agregando CSS personalizado.

Consejo: En lugar de editar los archivos de tu tema, lo que podría dañar tu sitio web, te recomendamos usar un plugin de fragmentos de código como WPCode.
WPCode hace que sea seguro y fácil agregar código personalizado en WordPress. Además, viene con opciones de 'Inserción' que te permiten insertar y ejecutar fragmentos automáticamente en ubicaciones específicas de tu sitio de WordPress, como después de una publicación.

Para más detalles, consulta nuestra guía sobre cómo agregar código personalizado en WordPress. También puedes consultar nuestra reseña detallada de WPCode para obtener más información sobre el plugin.
Método 2: Cómo mostrar publicaciones relacionadas en WordPress por categoría
Otra forma de mostrar contenido relacionado es listar las publicaciones que están en la misma categoría. La ventaja de este método es que la lista de publicaciones relacionadas casi nunca estará en blanco.
Al igual que el Método 1, necesitas agregar un fragmento de código a la plantilla single.php de tu tema o en un plugin de fragmentos de código como WPCode. Para más detalles, consulta el Método 1 y nuestra guía sobre cómo agregar código personalizado en WordPress.
$orig_post = $post;
global $post;
$categories = get_the_category($post->ID);
if ($categories) {
$category_ids = array();
foreach($categories as $individual_category) $category_ids[] = $individual_category->term_id;
$args=array(
'category__in' => $category_ids,
'post__not_in' => array($post->ID),
'posts_per_page'=> 2, // Number of related posts that will be shown.
'ignore_sticky_posts'=>1
);
$my_query = new wp_query( $args );
if( $my_query->have_posts() ) {
echo '<div id="related_posts"><h3>Related Posts</h3><ul>';
while( $my_query->have_posts() ) {
$my_query->the_post();?>
<li><div class="relatedthumb"><a href="<?php the_permalink()?>" rel="bookmark" title="<?php the_title(); ?>"><!--?php the_post_thumbnail(); ?--></a></div>
<div class="relatedcontent">
<h3><a href="<?php the_permalink()?>" rel="bookmark" title="<?php the_title(); ?>"><!--?php the_title(); ?--></a></h3>
<!--?php the_time('M j, Y') ?-->
</div>
</li>
<!--?php }
echo '</ul--></ul></div>';
}
}
$post = $orig_post;
wp_reset_query();
Ahora verás una lista de contenido relacionado al final de cada publicación.
Si deseas cambiar el estilo y la apariencia de tus páginas relacionadas, entonces necesitarás agregar CSS personalizado para que coincida con tu tema.
Guías expertas sobre publicaciones relacionadas en WordPress
¿Quieres aprender más sobre cómo mostrar publicaciones relacionadas en WordPress? Consulta estos útiles tutoriales sobre publicaciones relacionadas:
- Cómo mostrar publicaciones relacionadas en WordPress (paso a paso)
- Cómo mostrar entradas relacionadas del mismo autor en WordPress
- Cómo mostrar las publicaciones recientes en WordPress
- Cómo mostrar las publicaciones recientes de una categoría específica en WordPress
- Cómo agregar publicaciones relacionadas en línea en las entradas de blog de WordPress
- Cómo mostrar publicaciones aleatorias en WordPress
- Cómo mostrar páginas relacionadas en WordPress
Esperamos que este tutorial te haya ayudado a aprender cómo mostrar publicaciones relacionadas con miniaturas en WordPress sin plugins. También es posible que desees aprender cómo rastrear visitantes a tu sitio de WordPress, o consultar nuestra lista de 24 consejos para acelerar tu sitio web.
Si te gustó este artículo, suscríbete a nuestro canal de YouTube para obtener tutoriales en video de WordPress. También puedes encontrarnos en Twitter y Facebook.


Jiří Vaněk
Las publicaciones relacionadas son una forma increíble de atraer a los usuarios a más contenido en tu sitio web. Después de leer varios de tus artículos sobre este tema, finalmente entendí el poder de esta función y la implementé en mi página 404. Ahora, en lugar de mostrar contenido que ya no existe, ofrece alternativas y artículos similares a mis usuarios. Esto ha reducido enormemente la tasa de rebote de mi sitio web. Gracias no solo por este artículo, sino también por los otros artículos que has escrito sobre este tema. Me han ayudado a mejorar mi página 404.
Soporte de WPBeginner
Glad to hear our content was helpful
Administrador
kabir bairwa
Estaba intentando corregir las publicaciones relacionadas de WordPress, pero no estaba funcionando cuando vi este código y lo usé en mi archivo de WordPress, así que ahora mis publicaciones relacionadas de WordPress se muestran correctamente.
Soporte de WPBeginner
¡Nos alegra saber que nuestra guía pudo ayudarte!
Administrador
Jennifer
¿Hay alguna forma de tener publicaciones relacionadas basadas en el título de la publicación? No tengo etiquetas y mis categorías realmente no funcionan, ya que no hay distinción entre ellas.
Esto sería de gran ayuda si tuvieras un código para mostrar contenido relacionado basado en el título de la publicación.
aman
Quiero código para mostrar publicaciones y páginas aleatorias con miniatura
Soporte de WPBeginner
Deberías echar un vistazo a nuestra guía a continuación:
https://www.wpbeginner.com/wp-tutorials/how-to-display-random-posts-in-wordpress/
Administrador
karan4official
En lugar de usar <? usa <?php en todas partes
Soporte de WPBeginner
Thank you for your feedback, this article should currently be using the php version everywhere
Administrador
Motahar Hossain
Gracias por tu amable publicación.
Aquí se debe usar “ignore_sticky_posts” en lugar de “caller_get_posts”. Porque “caller_get_posts” está obsoleto.
Soporte de WPBeginner
Thanks for pointing that out, we’ll be sure to look into updating the article
Administrador
Frank
¿Puedes indicarme dónde agregar qué categorías quiero limitar las publicaciones relacionadas?
Soporte de WPBeginner
Este método limita las publicaciones a la categoría en la que se encuentra la publicación. Para limitar las categorías, necesitarías crear una declaración if para excluir ciertas categorías.
Administrador
Greg
¿Es posible que cuando haya más de X publicaciones relacionadas por categoría que estén relacionadas, puedas aleatorizar, digamos, 3 publicaciones?
Soporte de WPBeginner
Si bien es posible, requeriría agregar mucho más a esto, es posible que desees buscar un plugin para ese tipo de personalización.
Administrador
Akiode obasanjo
No se agrega CSS
luigi
Hola, ¿es posible limitarlos por fecha? ¿Mostrar solo los del último año?
Luis
Encontré una manera de hacer las miniaturas más pequeñas, pero las muestra en una columna y no horizontalmente. ¿Cómo se puede modificar esto?
Luis
El script está funcionando bien. El único problema que tengo es que las miniaturas son muy grandes. ¿Habría alguna manera de hacerlas más pequeñas?
Soporte de WPBeginner
Hola Luis,
Utiliza el tamaño de miniatura de publicación predeterminado. Puedes crear un nuevo tamaño de miniatura y luego usarlo en el código de esta manera:
1-click Use in WordPress
Administrador
Ana
cómo hacer para crear un shortcode para este código, creé la función pero no sé cómo devolver la impresión a la página.
Musarrof
Por qué estoy enfrentando este problema. error de sintaxis, fin de archivo inesperado
Por favor, ayúdenme.
Mike
Hola,
Soy principiante en WordPress.
Me gustaría mostrar Entradas Relacionadas.
En el menú principal tengo la Categoría A, y en la Categoría A – Subcategorías A, B y C. Las entradas están en la Categoría A, pero también pueden estar presentes en las 3 Subcategorías.
Al elegir una de las Entradas Relacionadas algo sale mal y las entradas de la Subcategoría elegida inicialmente ya no se muestran correctamente.
Anthony Reese
¡Gracias por el tutorial. Esto fue increíblemente útil y funcionó a la perfección!
pawan singh
Hola Admin, artículo muy informativo. Me gusta tu sitio por su simplicidad y franqueza. Todos los artículos van al grano, pero cuando se trata de compartir el conocimiento del código, te vuelves demasiado técnico. Simplemente ignora el hecho de que muchos de los visitantes no son expertos en codificación. ¿No sería mucho mejor si agregaras 2 o 3 líneas más a tu explicación para que sea completa y fácilmente comprensible para todos? De todos modos, gran artículo. Pero quiero saber, ¿qué código o plugin está usando Wpbeginner?
Ahmad
¡realmente útil, gracias!
Tracy
Lo que realmente apesta de tus artículos es que nunca dices CÓMO hacer algo. Está muy bien que me digas que ponga código en mi single.php, pero como principiante no sé qué es eso ni dónde encontrarlo. Quizás quieras pensar en incluir este tipo de información crítica en tus artículos en lugar de asumir que sabemos lo que significa, o que hemos navegado por todos tus artículos para averiguarlo.
Victor Siyaya
Estoy de acuerdo. Tampoco tengo idea de dónde pegar este código.
Rose
Gracias por la excelente publicación, muy útil. Me encontré con un error en el código, así que quería compartirlo con la esperanza de que sea útil para otros en el futuro. El error fue:
Se llamó a WP_Query con un argumento que está obsoleto desde la versión 3.1.0! “caller_get_posts” está obsoleto. Usa “ignore_sticky_posts” en su lugar.
Así que simplemente lo reemplacé y funcionó bien. También estoy usando espacios de nombres, así que necesité cambiar WP_Query a \WP_Query, además de cambiar el orden de lo siguiente:
global $post; $orig_post = $post;
Gracias de nuevo
Rose
sanjeev Kumar
señor
Estoy usando el código de categorías que funciona correctamente, pero una cosa es que cuando en la página de inicio la misma categoría tiene 2 o 3 publicaciones, el enlace se muestra en negro, pero quiero que se muestre la categoría que es la siguiente publicación.
Luan
Hola,
Gracias por tu publicación. Agregué el código en content-single.php y funcionó. Sin embargo, se muestra como 1 columna, no como 3 columnas como en tu ejemplo. ¿Podrías ayudarme con esto? Quiero que mis publicaciones relacionadas se muestren en 1 fila, 3 columnas. Muchas gracias.
Claudio
¡Hola!
El primer enlace en Fuentes Adicionales está roto.
Gracias por el código.
Soporte de WPBeginner
Hola Claudio,
Gracias por notificarnos. Hemos eliminado el enlace roto.
Administrador