2017-05-30 5 views
0

Ich habe ein kleines Problem! Ich möchte die Ergebnisse von zwei Abfragen mischen! Ich möchte, dass sie in der Datumsreihenfolge gemischt werden!Wordpress-Mix-Ergebnisse von zwei Abfragen

Mit der tatsächlichen Abfrage zeigen sie nacheinander.

Hat jemand die Lösung?

<?php 

$loop = new WP_Query(array (
    'post_type' => array('videos','photos'), 
    'category_name' => 'une', 
)); 

while($loop->have_posts()) : $loop->the_post(); ?> 

<?php the_title(); ?> 

<?php endwhile; ?> 

<?php 

$loop = new WP_Query(array (
    'post_type' => array('spectacles'), 
    'category_name' => 'une-en', 
)); 

while($loop->have_posts()) : $loop->the_post(); ?> 


<?php the_title(); ?> 

<?php endwhile; ?> 
+0

Das könnte dir versuchen Sie [wordpress.stackexchange.com] (https://wordpress.stackexchange.com/questions/135820/merge-2-args-in-one-wp-query-and-order-it-by-date). – showdev

+0

Danke @showdev ich fand die Lösung! –

Antwort

0

Haben Sie versucht, die Abfrage in eine anstelle von zwei zu kombinieren? Also würde man nur eine Frage haben, die

ist
$loop = new WP_Query(array (
    'post_type' => array('spectacles', 'videos', 'photos'), 
    'category__in' => array(1, 2), // IDs of the categories 
    'orderby'  => 'date' 
)); 

EDIT:

Wenn dies nicht mit den Kategorien funktioniert wie Sie erwähnt haben, können Sie diese Abhilfe verwenden:

$ids_a = new WP_Query(array (
    'post_type' => array('videos','photos'), 
    'category_name' => 'une', 
    'fields' => 'ids' 
)); 

$ids_b = new WP_Query(array (
    'post_type' => array('spectacles'), 
    'category_name' => 'une-en', 
    'fields' => 'ids' 
)); 

$ids = array_merge($ids_a, $ids_b); 

$loop = new WP_Query(array (
    'post__in' => $ids, 
    'orderby' => 'date' 
)); 
+0

Danke für deine Antwort, aber es funktioniert nicht, weil es auch die post_type Videos aus der Kategorie une-en zeigt! Ich möchte bestimmte Kategorien aus bestimmten post_type anzeigen! –

+0

Haben Sie Kategorien mit den gleichen Namen für jeden der Post-Typen erstellt, oder sind sie alle an den gleichen Satz von Kategorien angeschlossen? Wenn Sie Kategorien mit den gleichen Namen haben, können Sie die ID verwenden, um sie zu unterscheiden (der Code in meinem Beitrag). Wenn Sie jedoch nur eine Gruppe von Kategorien haben, benötigen wir eine andere Lösung – Spliid

+0

Sie sind nicht im selben Satz! Sie sind in zwei verschiedenen Teilen, einer in Französisch "une", einer in Englisch "une-en"! Vielleicht ist mein Aufbau des Systems nicht gut ... :( –