Mostrar publicaciones aleatorias en tu sitio de WordPress puede mejorar la participación del usuario al presentar a los visitantes una gama más amplia de tu contenido, animándolos a explorar más de lo que ofreces.
En el pasado, hemos mostrado publicaciones aleatorias en el blog de WPBeginner, por lo que hemos aprendido algunas formas diferentes en las que puedes hacerlo. En nuestra experiencia, el enfoque más fácil y efectivo es usar un plugin como WPCode o Recent Posts Widget Extended.
En este artículo, te mostraremos cómo mostrar fácilmente publicaciones aleatorias en WordPress utilizando ambas herramientas.

¿Por qué mostrar publicaciones aleatorias en WordPress?
Por defecto, WordPress lista tus publicaciones de blog en orden cronológico inverso (de la más nueva a la más antigua). Esto permite a los usuarios ver primero tus publicaciones más recientes.
Sin embargo, la mayoría de los usuarios no verán tus artículos más antiguos. Por ejemplo, si has estado ejecutando tu blog de WordPress durante mucho tiempo, tus artículos más antiguos no se mostrarán prominentemente en ningún lugar del sitio web.
Una forma de superar esto es haciendo de los enlaces internos un hábito. Enlazar a tus artículos más antiguos en publicaciones nuevas ayudará a los usuarios a descubrirlos. También aumentará tus visitas a la página y mejorará el SEO.
Otra forma de solucionar este problema es mostrando publicaciones aleatorias en tus páginas, publicaciones o barra lateral de WordPress.
Esto ayuda a los usuarios a descubrir contenido que de otra manera no habrían encontrado y también te permite mostrar publicaciones antiguas, mejorando la experiencia general del usuario.
Dicho esto, veamos cómo puedes mostrar fácilmente publicaciones aleatorias en WordPress. Cubriremos dos métodos, y puedes usar los enlaces rápidos a continuación para saltar al que deseas usar:
Método 1: Mostrar publicaciones aleatorias en WordPress usando WPCode (Recomendado)
Si buscas una forma fácil y personalizable de mostrar publicaciones aleatorias en WordPress, entonces este método es para ti.
Muchos tutoriales te dirán que hagas esto agregando código al archivo functions.php de tu tema. Sin embargo, el más mínimo error al escribir el código puede romper tu sitio web y hacerlo inaccesible.
Es por eso que recomendamos usar WPCode, que es el mejor plugin de fragmentos de código de WordPress del mercado. Es la forma más fácil y segura de agregar código personalizado a tu sitio web.
Primero, necesitas instalar y activar el plugin WPCode. Para instrucciones detalladas, por favor consulta nuestra guía para principiantes sobre cómo instalar un plugin de WordPress.
Nota: También puedes usar el plugin gratuito WPCode para este tutorial. Sin embargo, actualizar a la versión Pro te dará acceso a una biblioteca en la nube de fragmentos de código, lógica condicional inteligente y más.
Una vez activado el plugin, dirígete a la página Fragmentos de código » + Agregar fragmento desde la barra lateral de administración de WordPress.
Una vez que estés ahí, haz clic en el botón ‘+ Agregar fragmento personalizado’ debajo de la opción ‘Agrega tu código personalizado (Fragmento nuevo)’.

A continuación, debe seleccionar 'Fragmento PHP' como tipo de código de la lista de opciones que aparecen en la pantalla.

Luego serás dirigido a la página ‘Crear fragmento personalizado’, donde puedes comenzar escribiendo un nombre para el fragmento de código.
Este título es solo para tu referencia y no se mostrará en el front-end del sitio web.

A continuación, simplemente copia y pega el siguiente código en el cuadro ‘Vista previa del código’:
function wpb_rand_posts() {
$args = array(
'post_type' => 'post',
'orderby' => 'rand',
'posts_per_page' => 5,
);
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) {
$string .= '<ul>';
while ( $the_query->have_posts() ) {
$the_query->the_post();
$string .= '<li><a href="'. get_permalink() .'">'. get_the_title() .'</a></li>';
}
$string .= '</ul>';
/* Restore original Post Data */
wp_reset_postdata();
} else {
$string .= 'no posts found';
}
return $string;
}
add_shortcode('wpb-random-posts','wpb_rand_posts');
add_filter('widget_text', 'do_shortcode');
Al activarse, este código mostrará 5 publicaciones aleatorias en tu sitio web. También puedes cambiar el valor de 'posts_per_page'
a un número diferente.
A continuación, desplázate hacia abajo hasta la sección 'Inserción' y elige el modo 'Inserción automática'.
Incluso después de elegir este modo, necesitarás agregar el shortcode [wpb-random-posts]
a la barra lateral, página o publicación de tu sitio web para mostrar publicaciones aleatorias.
Ten en cuenta que este shortcode no es un resultado de la función ‘Shortcode’ de WPCode y es parte del fragmento de código en sí.

Finalmente, desplázate de regreso a la parte superior y cambia el interruptor ‘Inactivo’ a ‘Activo’.
Después de eso, simplemente haz clic en el botón ‘Guardar fragmento’ para almacenar tus cambios.

Mostrar publicaciones aleatorias en una página o publicación de WordPress
Una vez que hayas guardado tu fragmento de código, puedes mostrar publicaciones aleatorias en la página o publicación de tu sitio web utilizando este método.
Primero, abre una página/publicación nueva o existente desde el panel de WordPress.
A continuación, haz clic en el botón ‘Añadir bloque’ (+) en la esquina superior izquierda de la pantalla para abrir el menú de bloques. Desde aquí, busca y añade el bloque de Shortcode a la página o publicación de WordPress.
Después de eso, simplemente copia y pega el siguiente shortcode en el bloque:
[wpb-random-posts]

Finalmente, haz clic en el botón 'Publicar' o 'Actualizar' en la parte superior para guardar tus cambios.
Ahora, puedes visitar tu sitio web de WordPress para ver las publicaciones aleatorias.

Mostrar publicaciones aleatorias en la barra lateral como un widget
Si estás utilizando un tema clásico, entonces este método es para ti.
Primero, necesitas visitar la página Apariencia » Widgets desde la barra lateral de administración de WordPress.
Una vez que estés allí, simplemente haz clic en el botón ‘Añadir bloque’ (+) en la esquina superior izquierda de la pantalla para abrir el menú de bloques.
Desde aquí, localiza y añade el bloque de Shortcode en la pestaña ‘Barra lateral’. A continuación, copia y pega el siguiente shortcode en el bloque:
[wpb-random-posts]

Finalmente, haz clic en el botón ‘Actualizar’ en la parte superior para guardar tus cambios.
Ahora, puedes visitar tu sitio para ver las publicaciones aleatorias mostradas en la barra lateral de tu WordPress.

Mostrar publicaciones aleatorias en un tema de bloques
Si estás utilizando un tema basado en bloques con el editor de sitio completo, entonces este método es para ti.
Puedes empezar visitando la página Apariencia » Editor desde la barra lateral de administración de WordPress. Esto iniciará el editor de sitio completo de WordPress.
Aquí, necesitas hacer clic en el botón ‘Añadir bloque’ (+) en la esquina superior izquierda y añadir el bloque de Shortcode en el lugar que prefieras del sitio web.
Después de eso, copia y pega el siguiente shortcode en el bloque:
[wpb-random-posts]

Finalmente, haz clic en el botón ‘Guardar’ en la parte superior para almacenar tus cambios.
Ahora, puedes visitar tu sitio web para ver la lista aleatoria de publicaciones.

Método 2: Mostrar publicaciones aleatorias en la barra lateral de WordPress usando el widget de publicaciones recientes extendido
Este método es para ti si quieres mostrar publicaciones aleatorias en la barra lateral de tu WordPress sin usar ningún código.
Primero, necesitas instalar y activar el plugin Recent Posts Widget Extended. Para obtener instrucciones, puedes ver nuestro tutorial sobre cómo instalar un plugin de WordPress.
Descargo de responsabilidad: Ten en cuenta que el plugin no ha sido probado con las últimas versiones de WordPress. Sin embargo, cuando lo usamos en nuestro sitio web en tiempo real, parece estar funcionando bien. Para más detalles, consulta nuestra guía sobre plugins de WordPress obsoletos.
Una vez que el plugin se haya activado, puedes simplemente mostrar publicaciones aleatorias en la barra lateral de tu WordPress usando un bloque.
Sin embargo, solo funciona para el área de widgets en temas clásicos de WordPress. Si estás usando un tema de bloques, entonces el bloque del plugin no estará disponible.
De manera similar, el plugin no te permite mostrar publicaciones aleatorias en una página o publicación de WordPress.
Para mostrar publicaciones aleatorias en la barra lateral de WordPress, visita la página Apariencia » Widgets desde el panel de administración.
Aquí, haz clic en el botón ‘Añadir bloque’ (+) en la esquina superior izquierda de la pantalla para abrir el menú de bloques. Luego, busca y añade el bloque Recent Posts Extended a la pestaña ‘Barra lateral’.
Esto abrirá la configuración de opciones del bloque. Aquí, puedes empezar escribiendo un título que se mostrará encima de tu lista de publicaciones aleatorias.

Una vez que hayas hecho eso, cambia a la pestaña ‘Entradas’ en la columna de la izquierda.
Desde aquí, puedes seleccionar el tipo de entrada, el estado de la entrada y el orden de las entradas que deseas que se muestren en tu sitio web. También puedes elegir un tipo de entrada personalizado.

A continuación, desplázate hacia abajo hasta el menú desplegable ‘Orderby’ y selecciona la opción ‘Random’. Si no configuras esta opción, el bloque solo mostrará las entradas publicadas más recientemente en tu sitio.
Después de eso, también puedes limitar las publicaciones a ciertas categorías seleccionándolas en la sección ‘Limitar a Categoría’.

También puedes configurar los ajustes para miniaturas, extractos, CSS personalizado y más, cambiando a otras pestañas en el bloque.
Finalmente, haz clic en el botón ‘Actualizar’ en la parte superior para guardar tus cambios. Ahora puedes visitar tu sitio web para ver las publicaciones aleatorias que se muestran en la barra lateral de WordPress.

Bono: Optimiza tus publicaciones de blog para SEO
Además de mostrar publicaciones aleatorias en tu sitio de WordPress, también es importante optimizar cada publicación para SEO.
Esto mejorará los rankings de tu sitio web en los motores de búsqueda y atraerá más tráfico, ayudándote a generar clientes potenciales.
Para optimizar tus publicaciones de blog correctamente, recomendamos usar herramientas de investigación de palabras clave como el Generador de Palabras Clave de WPBeginner. Estas herramientas te permitirán encontrar palabras clave relevantes para usar en tu contenido.

Además de eso, también puedes usar herramientas de asistente de escritura SEO como Semrush para descubrir palabras clave LSI y relacionadas, cambiar el tono del idioma y averiguar la longitud promedio del artículo.
También puedes usar All in One SEO para mejorar aún más la calidad de tu contenido. Es el mejor plugin de SEO para WordPress del mercado que te permite agregar preguntas frecuentes y viene con un analizador de titulares, generador de títulos con IA, esquema de artículos, asistente de enlaces y más.

Todas estas funciones pueden ayudarte en última instancia a mejorar la calidad y el SEO de tus publicaciones de blog. Para más detalles, puedes ver nuestra reseña completa de AIOSEO.
Otros consejos para aumentar el ranking de tus publicaciones de blog incluyen usar categorías y etiquetas, mejorar la legibilidad, agregar una meta descripción y usar contenido visual como videos e imágenes en tus publicaciones.
Para obtener más información, puedes consultar nuestra guía para principiantes sobre consejos para optimizar tus publicaciones de blog.
Esperamos que este artículo te haya ayudado a aprender cómo mostrar publicaciones aleatorias en WordPress. También puedes consultar nuestra guía para principiantes sobre cómo reordenar fácilmente publicaciones en WordPress y nuestro tutorial sobre cómo crear una publicación privada en WordPress.
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.
Dayo Olobayo
He intentado varios métodos para mostrar publicaciones aleatorias, pero ninguno funcionó tan bien como este método de consulta personalizada. Este tutorial es fácil de entender y me encanta cómo proporcionaste ejemplos y fragmentos de código para ayudar a ilustrar el proceso. Tu experiencia me ha ahorrado mucho tiempo y frustración. ¡Sigue compartiendo tus conocimientos con nosotros!
Jiří Vaněk
Según entiendo, el código no incluye las imágenes destacadas de las publicaciones. ¿Hay alguna opción con código para mostrar también las publicaciones con imágenes destacadas?
Soporte de WPBeginner
Quizás quieras echar un vistazo a las últimas publicaciones del blog en el editor de bloques para eso.
Administrador
Jiří Vaněk
Gracias por el consejo. Sí, eso me funciona. Uso Elementor y ocasionalmente Seed Prod. Como nunca uso Gutenberg, esta opción nunca se me ocurrió. Simplemente no sabía que Gutenberg tenía un bloque así. Gracias por el consejo.
Chris Smith
Mis publicaciones fijadas siempre aparecen en mis publicaciones aleatorias. ¿Hay alguna forma de excluir las publicaciones fijadas de este código?
Soporte de WPBeginner
Para lograr eso, recomendaríamos usar el plugin del segundo método en lugar de modificar el código.
Administrador
Michael
¿Hay una forma fácil de almacenar en caché los resultados durante un cierto período de tiempo en lugar de aleatorizar cada vez? ¿Quizás como actualizar una vez cada 24 horas para reducir la carga en las llamadas a la base de datos cada vez?
Soporte de WPBeginner
Para esa funcionalidad, deberías consultar con el soporte del plugin para ver si está disponible.
Administrador
Marvin Duru
Por favor, intenté agregar el shortcode en una posición específica de mi sitio web, no dentro de la publicación en PHP, pero la sección de publicaciones aleatorias no se mostró, solo apareció mi texto “[wpb-random-posts]”.
¿Qué debo hacer?
Soporte de WPBeginner
Al usar el editor de bloques, deberías asegurarte de agregarlo usando un bloque de shortcode.
Administrador
Zeynep
Gracias, el código funciona perfectamente. Cambié la primera página de mi sitio de WordPress a index.html, ¿qué necesito para ejecutar [wpb-random-posts] en mi página HTML? Mi inglés es un poco débil, espero que me entiendas.
Soporte de WPBeginner
Necesitarías que la página sea una página de WordPress para que funcione un shortcode de WordPress.
Administrador
Elle
¿Cómo abordarías el estilo de esto? Me confunde cómo controlaría el diseño de esto, nunca he trabajado con estilo PHP.
Soporte de WPBeginner
Dependería del estilo que quieras agregar para saber qué se necesita hacer. Puedes agregar una clase en el código HTML para tener algo a lo que apuntar.
Administrador
Maria Cristhiane Amorim
¡Hola! ¿Puedo hacer esto en un listado?
Soporte de WPBeginner
Necesitarías aclarar a qué te refieres con eso
Administrador
Rob Packenham
Gracias por el útil artículo.
Tengo una pregunta: las páginas de mi sitio de WordPress incluyen una barra lateral con un widget de publicaciones aleatorias (extractos).
El problema es que Google indexa las páginas y 've' los extractos de publicaciones aleatorias como contenido de la página. Por lo tanto, en la búsqueda de Google, una página puede aparecer como coincidente con un término de búsqueda solo porque uno de los extractos de publicaciones aleatorias en la página coincidió con el término (no el contenido principal de la página).
Pero, cuando un usuario hace clic en el enlace en los resultados de búsqueda de Google, verá la página con un conjunto diferente de extractos de publicaciones aleatorias en la barra lateral, no el extracto de publicación con el texto coincidente. Por lo tanto, para ellos parece una mala búsqueda.
Idealmente me gustaría excluir los extractos de publicaciones aleatorias del índice de Google, es decir, ocultarlos de Google, pero eso no parece posible (?).
¡Si tienes alguna sugerencia, te lo agradecería! Gracias.
Jun Enriquez
Intenté esto y destruyó mi sitio, ¿cómo lo restablezco?
Error http 500
Por favor, ayúdenme
Gracias
Jun
Yin
Muchas gracias por compartir esto. Usé otro plugin para publicaciones aleatorias que ya no funciona. Luego encontré tu sitio y he instalado el plugin. Funciona a la perfección.
Lisa
¡Hola y gracias por este útil tutorial!
¿Podrías decirme cuál sería el fragmento de código para agregar y mostrar publicaciones aleatorias que estén en una categoría específica? Mi tema no muestra una barra lateral, así que no puedo usar el plugin y ya tiene una pantalla de publicaciones aleatorias debajo de cada artículo, pero se incluyen y muestran publicaciones de todas las categorías. Intenté revisar el código del tema y agregar 'post_category' => 'nombre-de-la-categoría', pero no funciona. ¿Alguna idea?
Raff
¡Hola! Solo quiero preguntar qué pasaría si quiero cambiar la publicación aleatoria cada semana o en cualquier momento dado. Por ejemplo, muestro un conjunto de publicaciones aleatorias, no cambiará hasta dentro de 7 días o en cualquier momento dado. ¡Gracias!
Abhimanyu Kashyap
Muchas gracias, pude mostrar publicaciones aleatorias. Cambié el número de publicaciones a 1 para mostrar 1 publicación aleatoria. ¿Hay una mejor manera de hacerlo?
También me gustaría saber cómo puedo usar una variable en lugar del tipo de publicación e ingresar una donde coloco el código corto, por ejemplo: [wpb-random-posts('post')].
¿Cómo puedo lograr esto??
devender
gracias por compartir este código, es muy útil...
Nate
Establecer posts en orderly => 'rand' es una medida a medias. Claro, la publicación se muestra 'aleatoriamente', pero como mencionó DI SEKITAR anteriormente, ¿de qué sirve mostrar una publicación aleatoria si será la misma publicación aleatoria cada vez que alguien visite el sitio?
Nate
Quise decir 'orderby'... me autocorrigió
smehsan
Lo siento, pero la cadena no estaba funcionando y acabo de hacer la cadena global y ahora funciona bien.
global $string;
Marléne Rose Shaw
Gracias por este gran tutorial. ¿Hay alguna forma de obtener el shortcode y luego mostrar las publicaciones aleatorias debajo del contenido en una página en lugar de la barra lateral??
Katherine
JAYKAY
Para excluir la publicación actual, agrega
‘post__not_in’ => array(get_the_id())
a la consulta.
Así que tus argumentos ahora serán:
$args = array( 'post_type' => 'post', 'orderby' => 'rand', 'posts_per_page' => 5, 'post__not_in' => array(get_the_id()), );
JAYKAY
Funciona bien con este fragmento de código.
Gracias KATHERINE
di sekitar
información muy interesante, intenté usar el plugin que mencionaste, pero tengo una gran pregunta.
¿Cómo hacer que las publicaciones aleatorias sean diferentes para cada visitante o dispositivo que visita mi sitio?
porque intenté visitar mi sitio usando otra computadora portátil y un teléfono inteligente, pero las publicaciones aleatorias de esos 2 dispositivos son las mismas.
JayKay
Hola,
Advanced Random Posts Widget es un plugin realmente bueno, pero tengo un problema. ¿Cómo podrías excluir la publicación actual/activa al mostrar una publicación aleatoria? ¿Es posible solucionar esto?
El problema es el mismo con el código del método 2.
Harry Stoddart
Usa la variable “Offset” para omitir las últimas X publicaciones.
Khalil Sillah
Como principiante, ¿qué lista de materiales necesitaría para aprender WordPress?
Ahm Clex
Una PC, WiFi y dedicación. Eso es todo lo que necesitas para aprender cualquier cosa hoy en día.
Gaurav Khurana
gracias por esto. Siempre he estado pensando en esto, ya que por defecto las últimas publicaciones son visibles en la página de inicio. Gracias por esto, definitivamente usaré este plugin