Frage Mehrere RSS feed quellen benutzen

  • Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Xom

Neues Mitglied
14 März 2020
8
0
1
17
Hallo Leute,
ich möchte mir privat eine kleine Nachrichtenseite bauen die mir immer neue Feeds anzeigt,
ich habe es jetzt soweit geschafft das es grundlegend funktioniert, jedoch nur mit einer einzigen quelle nun würde ich aber gerne mehrere RSS Feed quellen zusammenführen (mit Hilfe von php )
kennt ihr dort ein einfachen Code ?

Hoffe ihr könnt mir helfen :-)
 
Zuletzt bearbeitet:

Sempervivum

Senior HTML'ler
18 Oktober 2016
2.140
427
83
68
Wenn Du deinen Code postest, können wir dir sicher sagen, wie man ihn für mehrere Quellen verwenden kann.
Hast Du einen fertigen Feedreader benutzt oder ihn selbst programmiert?
 

Xom

Neues Mitglied
14 März 2020
8
0
1
17
Wenn Du deinen Code postest, können wir dir sicher sagen, wie man ihn für mehrere Quellen verwenden kann.
Hast Du einen fertigen Feedreader benutzt oder ihn selbst programmiert?
Ja klar sorry hatte ich vergessen :-o

Ich hab den php code gefunden auch von einem user hier aus der community, wäre schön wenn der angepasst werden kann:

Der Code:

<?php

$rss_feed = simplexml_load_file('http://www.boerse-online.de/rss/maerkte');


echo '<table width="95%" align="center" border="0"><tr><td>';


echo '<h3>'. $rss_feed->channel->title . '</h3>';


$i = 0;
foreach ($rss_feed->channel->item as $item) {


if ($i > 6)
{
break;
}
echo '<aside><b><a id="article" href="'. $item->link .'">' . $item->title . "</a></b></aside><br/>";
echo "<p><section><small>" . $item->pubDate . "</small></section></p>";
echo "<p><footer>" . $item->description . "</footer></p>";
echo "<hr class='cut'>";
$i++;
}





echo '</td></tr></table>';


?>
 

Sempervivum

Senior HTML'ler
18 Oktober 2016
2.140
427
83
68
Das ist ja ein sehr eigenwilliges HTML :D
Eine Lösung besteht z. B. darin, den Code in eine Funktion zu packen. Beim Test bin ich gleich auf ein Problem gestoßen: Offenbar ist das Format des Feed nicht bei allen Anbietern einheitlich. Ich musste eine Verzweigung einführen.
Außerdem kann ich mich erinnern, dass manche Feeds in komprimierter Form übertragen werden. Dann funktioniert dieser Code nicht.
Ich war so frei und habe das HTML ein wenig umgeändert:
PHP:
function read_feed($url)
{
    $rss_feed = simplexml_load_file($url);
    $thehtml = '<section class="feed-section"><h3>' . $rss_feed->channel->title . '</h3>';
    $formatok = true;
    if (isset($rss_feed->channel->item)) {
        $theitems = $rss_feed->channel->item;
    } else if (isset($rss_feed->item)) {
        $theitems = $rss_feed->item;
    } else {
        $formatok = false;
        $thehtml .= 'Unbekanntes Format';
    }
    if ($formatok) {
        $i = 0;
        $thehtml .= '<ul>';
        foreach ($theitems as $item) {
            if ($i > 6) {
                break;
            }
            $thehtml .= '<li><a class="feedlink" href="' . $item->link . '">' . $item->title . '</a>';
            $thehtml .= '<p>' . $item->pubDate . '</p>';
            $thehtml .= "<p>" . $item->description . "</p></li>";
            $i++;
        }
        $thehtml .= '</ul></section>';
    }
    return $thehtml;
}
echo read_feed('http://www.boerse-online.de/rss/maerkte');
echo read_feed('http://www.ndr.de/nachrichten/niedersachsen/index-rss.xml');
 
Zuletzt bearbeitet: