Bitte Hilfe bei Abfrage ACF Repeater Felder als jQuery

taro09

Neuer Benutzer
Beiträge
2
Hallo,
kann mir hier jemand helfen ? Ist für Leute, die sich auskennen wahrscheinlich gar nicht so schwierig...
Habe hebe eine Wordpress Seite mit Advanced Custom Repeater Feldern.
Die folgende Abfrage, gibt mir eine Liste mit Beginn, Ende, Preis, Link ect. geordnet nach Beginn Datum aus. Das funktioniert auch.
Nun möchte ich zu der Abfrage die Termine einer weiteren Repeater Gruppe hinzufügen.
Diese Felder heissen dann:

termineneu_%_beginn,
termineneu_%_ende,
termineneu_%_preis,
termineneu_%_buchbar ect.

Also beide Gruppen 't_block_' und 'termineneu_ ' sollen in der Ausgabeliste erscheinen und entsprechend nach Beginn geordnet werden. Geht das ?


Code:
<?php
// get all rows from the postmeta table where the sub_field (type) equals 'june, or "06"'
// - http://codex.wordpress.org/Class_Reference/wpdb#SELECT_Generic_Results
// $date = date('Ymd');   
 
    $rows = $wpdb->get_results($wpdb->prepare(
            "
            SELECT *
            FROM $wpdb->postmeta  pm
            Join wp_posts p ON pm.post_id=p.ID
            WHERE p.post_status = 'publish' AND pm.meta_key LIKE %s
            AND pm.meta_value LIKE %s
            AND pm.meta_value > CURDATE()
           ORDER BY pm.meta_value ASC;
            ",    
              't_block_%_beginn', // meta_name: $ParentName_$RowNumber_$ChildName
           "201608__"  // meta_value:
         
         ));
   
    // loop through the results
    if( $rows )
    {
        foreach( $rows as $row )
        {
// for each result, find the 'repeater row number' and use it to load the info!                           
    preg_match('_([0-9]+)_', $row->meta_key, $matches);
           
$meta_key_beginn = 't_block_' . $matches[0] . '_beginn'; // $matches[0] contains the row number!
         $beginn_id = get_post_meta( $row->post_id, $meta_key_beginn, true );
         $timestamp_beginn = DateTime::createFromFormat('Ymd', $beginn_id);

         $meta_key_ende = 't_block_' . $matches[0] . '_ende';
         $ende_id = get_post_meta( $row->post_id, $meta_key_ende, true );
         $timestamp_ende = DateTime::createFromFormat('Ymd', $ende_id);
        
         $meta_key_preis = 't_block_' . $matches[0] . '_preis'; // $matches[0] contains the row number!
         $preis = get_post_meta( $row->post_id, $meta_key_preis, true );
        
          $meta_key_buchbar = 't_block_' . $matches[0] . '_buchbar';
          $buchbar = get_post_meta( $row->post_id, $meta_key_buchbar, true );
         
          $meta_key_sprache = 't_block_' . $matches[0] . '_sprache';
          $sprache = get_post_meta( $row->post_id, $meta_key_sprache, true );
    
      echo '<li>' ;
         echo '<h5>' . $timestamp_beginn->format('d.m.Y') . '  -  ';  
      echo '' .   $timestamp_ende->format('d.m.Y') . ' :'; 
      echo '  ' ."<a href='" . get_permalink($row->post_id) . "'>";
      echo get_the_title( $row->post_id ).'   ';
      echo "</a>";
      echo '  ' . $preis . ' € ';
      echo ' ' . $sprache . ' ';
      echo '  ' . $buchbar . '</li></h5>' ;
            
             ?>                            
           
<?php
    }
}
?>
 
Werbung:
Bitte versuch Dein Problem mal rein auf DB-Ebene zu reduzieren, PHP-Code ist hier vollständig fehl am Platz. Dafür gibt es andere Foren.
 
Werbung:
Oh sorry, dachte das würde hierher passen, weil es ja auch ne Datenbankabfrage ist. Dann versuch ichs mal woanders
 
Zurück
Oben