Wie verwendet man get_post_custom_values, um den Wert eines Arrays zurückzugeben

Ich habe einen benutzerdefinierten Post-Typ namens albums und ein benutzerdefiniertes Feld namens tracklist das ein Array mit song_title und duration . Ich möchte eine Liste der Songs auf jedem Album ausdrucken.

Es ist hilfreich für mich, die Array-Hierarchie so zu denken:

  Albumliste
   Album
     Trackliste
       Spur
         Song Titel
         Dauer 

Bisher habe ich herausgefunden, wie man auf das Tracklisten-Array drillt, aber nicht, wie man die Werte der Songtitel darin anzeigt.

 $albums = get_posts(array( 'post_type' => 'album', 'meta_key' => 'tracklist' )); if($albums) { foreach($albums as $album) { echo get_the_title($album->ID) . "
"; // Displays album's title $tracklist = get_post_custom_values('tracklist', $album->ID); foreach($tracklist as $track) { echo $track . "
"; // Displays "12" (there are 12 tracks on this album) } } }

Jedenfalls habe ich ein paar Stunden daran gearbeitet, es selbst zu lösen, aber es wird spät! Sobald ich zum tracklist Array komme, wie bohre ich innerhalb des Tracks und erhalte den Songtitel?

Danke für jede Hilfe, die Sie anbieten können.

Solutions Collecting From Web of "Wie verwendet man get_post_custom_values, um den Wert eines Arrays zurückzugeben"

Wenn du dich änderst

 foreach($tracklist as $track) { echo $track . "
"; // Displays "12" (there are 12 tracks on this album) }

zu

 foreach($tracklist as $key => $value ) { echo "$key => $value ('tracklist')
"; // Displays "12" (there are 12 tracks on this album) }

was bekommst du dann?

Versuche dies…

 $albums = get_posts(array( 'post_type' => 'album', 'meta_key' => 'tracklist' )); if(isset($albums) && !empty($albums)) { foreach($albums as $album) { echo get_the_title($album->ID) . "
"; // Displays album's title $tracklist = get_post_meta($album->ID, 'tracklist', true); if(isset($tracklist) && !empty($tracklist)) { foreach($tracklist as $track) { echo $track . "
"; // Displays "12" (there are 12 tracks on this album) } } else { echo "No Tracklist Added"; } } }