Entradas aleatorias de una categoría en WordPress

He estado buscando la manera más fácil de conseguir una lista con un número determinado de entradas seleccionadas aleatoriamente de una o más categorías. Algo que parece tan inmediato, una simple consulta aleatoria a una base de datos, no parece estar muy extendido en WordPress.

Encontré varios plugins, pero no he conseguido hacer funcionar ninguno. En tech-buzz recomiendan el Random Posts Plugin de Wasabi, pero la página parece estar caída. Una pena, que las opciones que detallan en tech-buzz hacen al plugin bastante versátil, aunque no parece que tenga opción para seleccionar categorías.

A través del hilo de los foros de WordPress Display Random Posts from Specific Categories me encuentro otro plugin que tampoco he conseguido hacer funcionar.

Por lo que he visto WordPress no viene preparado para utilizar la orden “ORDER BY RAND()” de mysql, que es la que devuelve elementos de una tabla en orden aleatorio. Para permitir su uso hay que modificar el archivo query.php alojado en el wp-include/. Los cambios que hay que hacer son menores y no hay peligro de cargarse nada, según cuentan en la lista de correo donde lo he encontrado. Copio aquí los cambios exactos en el query.php que me han funcionado a mí:

Sin cambios:

$allowed_keys = array('author', 'date', 'category', 'title', 'modified', 'menu_order');
...
if ( 'menu_order' != $orderby )
$orderby = 'post_' . $orderby;

Con cambios:

$allowed_keys = array('author', 'date', 'category', 'title', 'modified', 'menu_order', 'rand');
...
if ( 'menu_order' != $orderby && 'rand' != $orderby)
$orderby = 'post_' . $orderby;
if ('rand' == $orderby)
$orderby = 'RAND()';

Tras los cambios, se puede usar con query_posts la opción rand en el atributo orderby. Por ejemplo, para conseguir una sola entrada aleatoria de la categoría Aleatorio:

query_posts('category_name=Aleatorio&showposts=1&orderby=rand')


COMENTARIOS / 5 COMENTARIOS

Mi buenskotperez, en el topic que mencioas de tech-buzz alguien actualizó la URL correcta del plugin:
http://wasabi.pbwiki.com/Random%20Posts%20and%20Random%20Excerpts

O checa el post:
http://tech-buzz.net/2006/08/14/random-post-plugin-for-wordpress/

Ya lo descargué y apenas lo voy a testear. Lo que no me gustó es que no mencionan con cuáles versiones es compatible.
En fin.
Saludos

Por Guerry el 29 de Ene de 2008 a las 23:01

Gracias por la corrección, Guerry. En efecto no hay mucha información sobre el plugin, pero yo también lo probaré, pues me parecío, como ya apunté, bastante fácil de usar.

Por skotperez el 30 de Ene de 2008 a las 8:54

En cualquier caso, añadir los cambios que indico arriba en el archivo query.php me parece más sencillo y da más libertad a la hora de llamar aleatoriamente a cualquier comando dentro del Loop

Por skotperez el 30 de Ene de 2008 a las 8:58

hola…
en relacion a :

http://voragine.net/wordpress/lista-de-entradas-aleatorias-de-una-categoria

Funciona este metodo para mostrar entradas aleatorias?

Por fernando el 23 de Mar de 2008 a las 15:08

Claro, Fernando, cambiar las líneas del archivo query.php precisamente sirve para conseguir mostrar una lista con el número de entradas aleatorias que quieras. Sólo tendrás que introducir, tras los cambios en query.php, el código que especifico en el lugar donde quieras que aparezcan las entradas.

Por skotperez el 25 de Mar de 2008 a las 7:36

COMENTA / EXPRESA TU OPINIÓN
Los comentarios tienen que ser aprobados por un editor antes de ser publicados.

XHTML: Puedes usar las siguientes etiquetas para dar formato: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

ARTÍCULOS RELACIONADOS / Lista generada automáticamente

MÁS / Artículos de Enero de 2008

MÁS / Otros artículos sobre wordpress

CALENTITO / Últimos artículos

Otros blogs en los que colaboro

RSS Obsoletos

  • ObsolET de hoy8 de Septiembre de 2008
    Hace unos días pillamos E.T. en un canal del cable y nos quedamos atrapados. He de reconocer que de crío, E.T. me daba ascopena, pero esta vez fue la buena. Reímos y lloramos frente a la tele, nos indignamos con los fríos procedimientos gubernamentales y nos enternecimos con la salvación de ranas. Pero lo mejor [...]
    paaq
  • Llegó tarde7 de Septiembre de 2008
    Ya han comprado éstos el dichoso teclado con conexión USB. Yo he estado esta mañana buscando por internet a ver si alguien sabía como conectar un teclado con puerto PS/2 en un portátil, pero nada. Alguien podría preguntarnos que qué pasa con eso de que no se puede comprar material “amortizable” con la subvención, por ejemplo [...]
    manu
  • Vini vidi6 de Septiembre de 2008
    La casualidad quiso que nos topáramos con las treinta personas que, blandiendo juguetes hackeados y sables láser, iban montándola a la salida del metro. Era la concentración de doorags. De ahí a la Rock Palace, conciertillo, fiesta y a vivir, que la noche es joven. Los Caballos De Düsseldorf, dándolo todo Manu se dedicó a las relaciones [...]
    paaq

RSS meipi

  • Quikmaps: superposición de mapas14 de Julio de 2008
    Quikmaps es otra aplicación de mapas que permite georreferenciar información fácil y rápidamente, para luego generar un código que permite incrustar el mapa con la información en cualquier otra página. No es una aplicación nueva ni hace nada que no puedan hacer otras decenas de páginas. Eso sí, el muy fácil de usar. Pero sobre [...]
    skotperez
  • Spermöla digital11 de Julio de 2008
    Hace poco se ha puesto en funcionamiento un nuevo meipi con la idea de crear un espacio de intercambio de objetos usados. Cualquiera que tenga una necesidad material puede demandarla, cualquiera que tenga algo sobrante puede ofrecerlo. La idea es sencilla y se practica mucho en países del norte de Europa, sobre todo en Alemania, [...]
    skotperez
  • Mapstraction: la meta API10 de Julio de 2008
    Hace unos meses hablábamos de la importancia de tomar el control de tus mapas, para poder personalizarlos al máximo. También para tener las menores dependencias posibles, la mayor libertad por tanto. Elegir una aplicación para gestionar los mapas de nuestra aplicación nos obliga a usar su API, a aceptar sus reglas por tanto, por muy [...]
    skotperez