Como redirecionar para um post aleatório a partir de um link do menu no WordPress

  • Autor Autor oTommy052
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
O

oTommy052

Beta
Usuário com poucas negociações! Use sempre o saldo do ForoBeta!
Hola a todos,

Me gustaría que me pudieseis ayudar en un asunto. Quiero poder crear una nueva página en WordPress, de modo que al pinchar en ella, redirija a un post al azar.

Todas las soluciones que encuentro en la web se refieren a mostrar posts aleatorios en el sidebar, pero lo que quiero es que sea a través de un enlace de una página, como una opción más del menú.

Gracias y un saludo! 🙂
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
bueno podrías copiar el codigo php de ese slidebar que crea la dirección aleatoria y listo lo pones en un menú de tu wordpress como si fuera una página.
 
Pero copiar el código directamente en un widget, por ejemplo, no es posible, da error. ¿Dónde dices que debería copiarlo exactamente?

Edito: Y, de paso... ¿alguien me podría sugerir algún código concreto para esta función?
 
a ver si este pedazo de código te ayuda, primero cópiate el template de page.php y cámbiale de nombre, luego agrega el siguiente código en la parte del body

$rand_posts = get_posts('numberposts=1&orderby=rand');
foreach( $rand_posts as $post ) : ?>
<a href="<?php the_permalink(); ?>">< ?php the_title(); ?></a> <br />
<?php the_content();?>
< ?php endforeach; ?>

una vez q hayas guardado, créate una nueva página y agrega como plantilla a este archivo modificado y guárdalo
=)
 
¿Cómo agrego como plantilla un archivo? No entiendo qué quieres decir con eso... :ambivalence:
_______

Por favor, se agradece un poco más de ayuda... Suponiendo que tengo un código para generar un post aleatorio que funciona, ¿dónde debo colocarlo?

Gracias.
 
Última edição:
Vale, ya conseguí lo que pretendía. La solución es crear una plantilla (template), como dijo taek, duplicando el page.php (en mi caso dupliqué y modifiqué sobre el index.php, porque me interesaba ese aspecto), que es la platilla por defecto para las páginas, y meterle el código correspondiente en el lugar adecuado. Yo utilizo el siguiente, y me funciona bien:
PHP:
<?php query_posts(array('orderby' => 'rand', 'showposts' => 3)); ?>
Después habría que subir el nuevo archivo al servidor (llamándolo, por ejemplo, randompage.php) y, por último, seleccionar la plantilla en una nueva página que crees. El tema es que no verás la opción para escoger plantillas si no añades al principio del randompage.php la siguiente línea:
PHP:
<?php /* Template Name: RandomPage */ ?>
Y eso es todo. Espero que a alguien le sirva.
 
Voltar
Topo