Der Bereich Shopware Labs ist die Plattform für alle Entwickler. Hier findet man technische Dokumentationen und zahlreiche Tipps und Tricks rund um das Thema Programmieren. In dieser Rubrik stellen außerdem die Entwickler der shopware AG neue und experimentelle Lösungsansätze vor. Neue Funktionen, die in dieser Rubrik bereitgestellt werden, sind teilweise auch für zukünftige Releases geplant. Die Funktionen können dann ohne Programmierkenntnisse zukünftig direkt im Shopware Backend konfiguriert werden oder werden über Plugins bereitgestellt. Informationen über neue, geplante Funktionen finden Sie in unserer Roadmap.
Bitte beachten Sie, dass die hier bereitgestellten Lösungsansätze nicht offiziell supportet werden und nur eingebaut werden sollten, sofern Sie über das entsprechende, technische Wissen verfügen.
Externe RSS- und Atomfeeds auf der Startseite anzeigen
- shopware AG
- 10.05.2010
- 1
-
- RSS, Atom, Feeds, Startseite
- Labs/ Alte Erweiterungen/ Soziale Netze
- Kein Support
Inhaltsverzeichnis
Allgemein
Mit SimplePie ist es möglich RSS- und Atom-Feeds per PHP zu parsen und auf der Startseite anzuzeigen. SimplePie liefert Ihnen dazu mehrere Klassen, welche den Umgang mit Feeds stark vereinfacht.
Installation (Server und Backend)
- Laden Sie sich SimplePie von der Projekthomepage herunter: http://github.com/rmccue/simplepie/downloads
- Bauen Sie eine Verbindung zu Ihren FTP-Server auf und wechseln Sie in das Verzeichnis "engine/vendor" und erstellen Sie ein Verzeichnis mit dem Namen "simplepie"
- Laden Sie die Datei "simplepie.inc" aus dem SimplePie Archiv in das Verzeichnis "engine/vendor/simplepie" hoch
- Loggen Sie sich in Ihr Shopware Backend ein
- Gehen Sie unter Einstellungen auf Grundeinstellungen. Hier wechseln Sie in Erweiterte Systemeinstellungen -> Hookpoints und erstellen einen neuen Hookpoint
- Als Einstiegspunkt für den Hookpoint wählen Sie bitte "sCore.php_sStart_BeforeEnd" aus
- Bitte bezeichnen Sie den Hookpoint als "SimplePie RSS-Feedparser"
- Kopieren Sie jetzt den folgenden Code in das Feld "Auszuführender Code", speichern den Hookpoint und leeren Ihren Shopcache
include('engine/vendor/simplepie/simplepie.inc'); $feed = new SimplePie(); $rss = ''; //Bitte geben Sie hier ihre RSS-Adresse ein $feed->set_feed_url($rss); $feed->init(); if($feed->data) { $items = $feed->get_items(); $i = 0; foreach($items as $item) { $variables['feeds'][$i]['title'] = $item->get_title(); $variables['feeds'][$i]['link'] = $item->get_permalink(); $variables['feeds'][$i]['content'] = $item->get_content(); $variables['feeds'][$i]['date'] = $item->get_date('d.m.Y'); $i++; } }
Bitte achten Sie darauf dass Sie in Zeile 3 Ihre RSS-Feed Adresse angeben. Ab diesen Punkt steht Ihnen die Smarty-Variable "$feeds" zur Verfügung, welche Ihre Feeds erhält.
Installation (Template)
Um die Feeds auf der Startseite Ihres Shops anzuzeigen ist eine Template-Anpassung nötigt. Dazu öffnen Sie die Datei "index.tpl", welche sich im Verzeichnis "templates/0/de/index/" befindet. Hier suchen Sie sich die Stelle heraus, wo die Feeds anzeigen sollen und fügen folgenden Code ein:
{foreach from=$feeds item=item key=key name="counter"} <div class="feed"> <span class="title">{* Feed Title *}{$item.title}</span> <span class="date">{* Feed Date *}{$item.date}</span> {* Feed Content *}{$item.content} <span class="link"><a href="{$item.link}" title="{$item.title}">{* Feed Link *}{$item.link}</a></span> </div> {/foreach}
Aussehen per CSS anpassen
Das Styling der Ausgabe kann natürlich wieder per Cascading Style Sheets passieren. Hierzu haben Sie folgende Klassen zur Verfügung:
- .feed - Container für die Feeds
- .feed .title - Der Titel des Feeds
- .feed .date - Datum des Feeds
- .feed .link - Link des Feeds
Sonderzeichen werden nicht korrekt angezeigt
Wenn bei Ihnen die Sonderzeichen nicht korrekt angezeigt werden, dann liegt hier ein Problem mit der Text Encodierung zusammen. SimplePie bietet für diesen Fall auch passende Methoden wodurch Sie die Problematik umschiffen können.
Hier zu öffnen Sie den angelegten Hookpoint und suchen nach der Zeile
$feed->init();
und ersetzen diese mit folgenden Code-Block:
$feed->set_output_encoding('Windows-1252'); $feed->init(); $feed->handle_content_type();
Artikel-PDF erstellen
Erweiterung bewerten
Kommentare:
Anzahl der Feeds übergeben
18.08.2010 08:08Von: Johannes
Hallo zusammen,
erstmal, super Anleitung!
Wie kann man aber nun über den Hookpoint die Anzahl der übergebenen Artikel einstellen? Geht das?
Viele Grüße
Johannes
Artikel kommentieren
Weitere interessante Artikel:
Bestell-Nr.: SW1367
Lieferzeit ca. 5 Tage
Preise inkl. gesetzlicher
MwSt. zzgl. Versandkosten*
Preise inkl. gesetzlicher
MwSt. + Versandkosten*