2017-01-31 4 views
0

Sagen wir, ich habe 100 paginierte Beiträge in WordPress.Wp_query teilweise zufällig

Ist es möglich, für einzelne wp_query zu was:

  • 10 Beiträge gepflückt zufällig werden und den ersten Platz.
  • Der Rest (90+) sind standardmäßig sortiert und nach den ersten 10 zufälligen Posts platziert.

danke.

+0

Es ist nicht möglich für eine Abfrage, es so auszugeben. Ich würde versuchen, "get_posts" zu verwenden, um alle Beiträge, die Sie benötigen, in einer Tabelle zu erhalten und dann die zufälligen 10 anzuzeigen, während Sie sie aus dem Array entfernen (oder einfach ihre Position ändern). –

Antwort

0

Haben Sie nichts dagegen meinen Kommentar vor. Hier ist, wie Sie einzelne wp-Abfrage neu anordnen

$the_query = new WP_Query(array(
    'numberposts' => -1, 
    'post_type'  => 'post', 
)); 

$a = $the_query->posts; 

$ta = array_rand($a, 10); 
for($i=0;$i<count($ta);$i++) { 
    $res = array_splice($a, $ta[$i], 1); 
    $ta[$i] = $res[0]; 
} 
$a = array_merge($ta, $a); 
$the_query->posts = $a;