Wie lade ich die nächsten 7 Tage und irgendwelche Ereignisse (cpt) auf, die in diesen Tagen enthalten sind

Ich muss die nächsten sieben Tage auflisten, egal an welchem ​​Tag. Wenn es Montag ist, fängt es mit heute an und listet 7 Tage auf, wenn sein Freitag mit heute beginnt und 7 Tage von heute auflistet.

Als nächstes muss ich irgendwelche Ereignisse für diesen Tag zeigen. Wenn für einen bestimmten Tag keine Ereignisse vorhanden sind, wird einfach eine Standardgrafik angezeigt.

Ich mache jeden Tag eine vorgestellte Veranstaltung und stelle sie schließlich so auf, dass sie nur noch diese zeigt, aber im Moment möchte ich nur die nächsten 7 Tage und alle darin enthaltenen Ereignisse auflisten.

Ich habe zwei Stücke, die nicht sehr gut zusammenpassen. Zuerst:

<?php $cur_day = 'current_day'; $last = 'last'; $date = date('om-d'); $ts = strtotime($date); $dow = date('w', $ts); for ($i=0; $i 

Dies wird jeden der nächsten 7 Tage beginnend mit heute auflisten.

  $event_query = new WP_Query( array( 'post_type' => 'event', // only query events 'meta_key' => 'event-date', // load up the event_date meta 'orderby' => 'meta_value', 'order' => 'asc', // ascending, so earlier events first 'meta_query' => array( array( // restrict posts based on meta values 'key' => 'event-date', // which meta to query 'value' => $event_date, // value for comparison 'compare' => '=', // method of comparison 'type' => 'NUMERIC' // datatype, we don't want to compare the string values ) // meta_query is an array of query ites ) // end meta_query array ) // end array ); // close WP_Query constructor call 

Dies listet die nächsten sieben Tage auf, geht aber mit den Ereignissen nicht gut …

Ich versuche, dies zu kopieren: http://www3.dmagazine.com/events mit cpt’s

Danke bitte helfen

Solutions Collecting From Web of "Wie lade ich die nächsten 7 Tage und irgendwelche Ereignisse (cpt) auf, die in diesen Tagen enthalten sind"

Sie sollten es auf jeden Fall in nur einer Abfrage tun. Richte dann eine einfache Schleife ein, jede Wiederholung erhält das Datum dieses Tages. Durchlaufen Sie dann alle Posts und vergleichen Sie das Datum mit dem Datumsmetafeld und geben Sie es aus, wenn es übereinstimmt. Ich denke, so etwas sollte funktionieren …

 $today = date("omd"); $future = strtotime ( '+6 days' , strtotime ( $today ) ) ; $future = date ( 'omd' , $future ); $event_query = new WP_Query( array( 'post_type' => 'event', 'meta_key' => 'event-date', 'orderby' => 'meta_value', 'order' => 'asc', 'meta_query' => array( array( 'key' => 'event-date', 'value' => array($today,$future), 'compare' => 'BETWEEN', 'type' => 'DATE' ) ) ) ); for ($i=0; $i<7; $i++){ $thedate = strtotime ( '+'.$i.' day' , strtotime ( $today ) ) ; $thedate = date ( 'omd' , $thedate ); echo $thedate; // loop thru all posts and check $thedate against your date meta // and output if it matches // then rewind_posts(); to set it up for the next day }