Ho riscontrato questo problema sul supporto di Wordpress e l'argomento purtroppo ora è chiuso. Ho questo stesso problema ... (leggi sotto)
Abbiamo creato un sito in cui i membri possono consigliare cose come libri preferiti, film, canzoni, ecc. Per questo problema userò la pagina Film come esempio.
La pagina "Film" è in definitiva un modello di pagina personalizzato che chiede a wordpress di visualizzare un elenco casuale di TUTTI i post a cui è stata assegnata la categoria "film" (categoria 31). Visualizza il titolo di questi film in ordine casuale usando il codice qui sotto.
<?php
$rand = new WP_Query("cat=31&showposts=-1&orderby=rand");
while($rand->have_posts()) : $rand->the_post();
?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?>
<?php endwhile; ?>
Il problema è che l'elenco sta diventando piuttosto lungo e vorrei dividerlo in due o più pagine di circa 10 film ciascuna. Per raggiungere questo obiettivo, ho usato il codice qui sotto.
<?php
$page = (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts("cat=31&orderby=rand&showposts=10&paged=$page");
while ( have_posts() ) : the_post()
?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?>
<?php endwhile; ?>
Ma c'è un problema perché, sebbene divida i dati in pagine di 10 post ciascuno (impaginati), non riesce a includere un nuovo set di 10 post a pagina 2 e così via. In altre parole, poiché elenca le cose in un ordine casuale, esce e ottiene altri 10 post casuali (o in questo caso titoli di film). Di conseguenza, abbiamo alcuni post di titoli di film ripetuti invece di un nuovo set di 10 titoli di film casuali a pagina 2, ecc.
La mia domanda è: cosa posso aggiungere a questo codice per ottenere wordpress per "ricordare" quali 10 messaggi casuali ha incluso nella pagina 1, e quindi avere un nuovo set di 10 post da mettere nelle pagine 2, 3, ecc. Fino a vengono visualizzati tutti i post. Vorrei che ci fosse una sola occorrenza di un post per pagina quando ordinato in modo casuale in set di 10.