Erstellen von Shortcode zum Ziehen von JSON-Arrays

Ehrlich gesagt – das könnte ein Duplikat einer anderen Frage sein, die ich da draußen habe. Entschuldigung wenn es ist. Ich lerne diese Seite und PHP / WordPress Entwicklung. Ich habe Partnerschaften mit lokalen Websites, die JSON verwenden, und wir arbeiten zusammen. Sie sind jedoch keine WordPress-Spezialisten.

Ich möchte herausfinden, was mein Freund ein JSON-Objekt von dieser URL nennt:

http://aggrenda.com/mpellas/michael-pellas/events.json

Ich versuche, einen Shortcode zu erstellen, der die Daten in geplante Posts parsen kann. Ich habe spezifische Datum, Adresse, Beschreibung (und andere) Daten.

Ich habe mit PHP auf phpfiddle.org gearbeitet und war erfolgreich. Ich konnte jedoch nichts in die WordPress-functionalität übersetzen.

Hier ist einer meiner letzten Versuche:

add_shortcode('aggrenda', 'requestAggrendaEvents'); function requestAggrendaEvents() { $json = file_get_contents("http://aggrenda.com/mpellas/michael-pellas/events.json"); $data = json_decode($json, true); var_dump($data['events'][1]['title']); } 

Das grundlegende php funktioniert, aber wenn ich file_get_contents mit wp_remote_get change, komme ich mit nichts als einer leeren Seite … oder einer null Rückkehr abhängig von kleinen Veränderungen in meinem Code. Ich habe alles in functions.php gesetzt.

Ich habe eine Reihe anderer Snippets, in denen das PHP funktioniert, aber ich kann es nicht in WP-functionalität übersetzen. Ich bin mir sicher, dass ich etwas Kleines messe. Hilfe?

Solutions Collecting From Web of "Erstellen von Shortcode zum Ziehen von JSON-Arrays"

Wie in der Dokumentation zu wp_remote_get() wird nicht nur der Rumpf der angeforderten Ressource zurückgegeben. Seine Rückgabe ist entweder das Array von Daten oder das WP_Error Objekt bei einem Fehler.

Der einfachste Ausschnitt, um an den Körper zu gelangen, wäre:

 $json = wp_remote_retrieve_body( wp_remote_get( $url ) ); 

PS es ist irgendwie komisch, dies in Kürze zu tun, bist du sicher, dass es am besten geeignet ist? 🙂