Wie zeige ich Remote-XML-Dateien mit WordPress im Frontend mit PHP an?

Lesezeit: 3 Minuten

Ich habe ein Problem, ich muss eine XML-Datei anzeigen, die auf einem Remote-Server gehostet wird. Diese Datei möchte ich mit CSS und PHP in einer bereits zugewiesenen Datei anzeigen (page-xxxx.php)

Ich verwende derzeit den folgenden Code, verstehe jedoch nicht sehr gut, was ich tue:

<!-- API here we go!!! -->
<?php
$xmlhd = wp_remote_get('http://www.myurl.com/api/channel.php?type=hd');
$xmlparseado = simplexml_load_string($xmlhd['body']);
?>

Die im Code angegebene URL zeigt eine XML-Datei wie diese:

<programations>
    <channel name="KCBS HD">
        <row>
            <date>july, 23</date>
            <time>06:00</time>
            <title><![CDATA[ WKCBS Action News ]]></title>
            <description><![CDATA[ Action News, hosted by: Jenn Doe ]]></description>
            <imagethumb/>
        </row>
        <row>
            <date>July, 23</date>
            <time>06:35</time>
            <title><![CDATA[ KCBS Sports Center ]]></title>
            <description><![CDATA[ The best scoreS from the Sportscenter stadium, hosted by: Fernando Sobalaprieta ]]></description>
            <imagethumb/>
        </row>
    </channel>
</programations>

Was ich gerne wissen würde, ist, wie man dies am vorderen Ende einer Seite anzeigt:

  • Datum
  • Zeit
  • Bezeichnung
  • Vorschaubild (falls vorhanden)

Notiz:

Der Inhalt des XML ist nur ein Musterbeispiel und stellt nicht unbedingt die Realität dar: D

Im Voraus, danke.

  • Nun, Sie haben mit simpleXML bereits richtig angefangen. Warum nicht weiter damit arbeiten, um mit den empfangenen Daten zu arbeiten?

    – Mike Brant

    23. Juli 2013 um 20:36 Uhr

Wie zeige ich Remote XML Dateien mit Wordpress im Frontend mit PHP
Nikola Kiricic

Funktion simplexml_load_string(); Objekt erstellt.

Wenn Sie versuchen, print_r($xmlparseado) zu drucken, sollten Sie Folgendes erhalten:

SimpleXMLElement Object
(
    [channel] => SimpleXMLElement Object
        (
            [@attributes] => Array
                (
                    [name] => KCBS HD
                )

            [row] => Array
                (
                    [0] => SimpleXMLElement Object
                        (
                            2022 => july, 23
                            [time] => 06:00
                            How to display remote XML file with WordPress in frontend using php? => SimpleXMLElement Object
                                (
                                )

                            How to display remote XML file with WordPress in frontend using php? => SimpleXMLElement Object
                                (
                                )

                            [imagethumb] => SimpleXMLElement Object
                                (
                                )

                        )

                    [1] => SimpleXMLElement Object
                        (
                            2022 => July, 23
                            [time] => 06:35
                            How to display remote XML file with WordPress in frontend using php? => SimpleXMLElement Object
                                (
                                )

                            How to display remote XML file with WordPress in frontend using php? => SimpleXMLElement Object
                                (
                                )

                            [imagethumb] => SimpleXMLElement Object
                                (
                                )

                        )

                )

        )

Wenn Sie also beispielsweise für jede Iteration verwenden, sollten Sie auf jede Zeile zugreifen:

$xmlparseado = simplexml_load_string($string);

$content="";
$rows = $xmlparseado->channel->row;
foreach($rows as $key=>$row){   
    if($key =='row'){
     $row_string = '<ul>';
     $row_string.= '<li>Date: '.$row->date.'</li>';
     $row_string.= '<li>Time: '.$row->time.'</li>';
     $row_string.= '</ul>';
     $content.=$row_string;     
    }   
}
echo $content;

Hinweis: Dies ist nur ein Beispiel, aber Sie können sein Muster verwenden

  • Ich habe das Codebeispiel für meine Zwecke gut korrigiert und gute Ergebnisse hinterlassen, leider kann ich nicht mit dem Code für Vorschläge antworten 🙁

    – Herr Roman

    23. Juli 2013 um 21:23 Uhr


996400cookie-checkWie zeige ich Remote-XML-Dateien mit WordPress im Frontend mit PHP an?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy