Teilen Sie Ihre Feeds auf mehrere Seiten auf
So paginieren Sie selbst erstellte XML-Feeds von Landing Pages mit dem Abfrageparameter ?p=. Vermeiden Sie Timeouts bei großen Feeds.
Wenn Sie einen Feed selbst über eine Landing Page erstellen, kann er so groß werden, dass das System die gesamte Datei nicht in einem Durchgang erzeugen kann. Die Folge sind Timeouts, leere Dateien oder Feed-Empfänger, die das XML nicht lesen können. Die Lösung besteht darin, den Feed in mehrere kleinere Seiten mit einem einfachen Abfrageparameter in der URL aufzuteilen.
Dieser Leitfaden erklärt, wie Sie Ihren Feed richtig paginieren, welchen Parameter Sie verwenden und wie Sie alle Seiten von einem externen Server abrufen.
Wichtig: Der Parameter heißt p. Wenn Sie stattdessen ?page= verwenden, wird der Parameter ignoriert und Sie erhalten jedes Mal die erste Seite.
So paginieren Sie Ihren Feed
Fügen Sie ?p= gefolgt von einer Seitenzahl in die URL Ihres Feeds ein. Die Seitenzahl beginnt bei 0, also ist ?p=0 die erste Seite, ?p=1 die zweite Seite und so weiter:
https://dinshop.dk/landingsside-feed (wie bei ?p=0) https://dinshop.dk/landingsside-feed?p=0 (erste Seite) https://dinshop.dk/landingsside-feed?p=1 (zweite Seite) https://dinshop.dk/landingsside-feed?p=2 (dritte Seite)
Die Anzahl der Produkte pro Seite wird durch das Limit bestimmt, das Sie auf der Landing Page selbst festlegen. Sie können die Seitenzahl so lange erhöhen, bis die Seite keine Produkte mehr anzeigt.
Hinweis: Wenn die Seitenzahl höher ist als die Anzahl der tatsächlich existierenden Seiten, wird Shoporama entweder eine leere Seite zurückgeben oder zur ersten Seite zurückkehren. Beenden Sie daher die Paginierung, sobald eine Seite 0 Produkte zurückgibt.
Wann ist dies notwendig?
- Bei Feeds mit vielen Produkten kann es zu Zeitüberschreitungen oder Speichermangel kommen, wenn die gesamte Datei auf einmal generiert wird
- Partner-Netzwerke wie Google Shopping und Partner Ads können Feeds empfangen, die auf mehrere URLs verteilt sind.
- Verbessert die Leistung und verringert das Risiko von Fehlern, da jede Seite schnell generiert wird
- Erleichtert die Fehlerbehebung für ein einzelnes Segment, wenn etwas schief läuft
Beispiel: Abrufen aller Seiten in einem Skript
Wenn Sie Ihren Feed von einem externen Server abrufen (z. B. in einem Partner-Cron-Task oder einem eigenen Skript), können Sie eine Schleife fahren, bis keine Produkte mehr vorhanden sind:
$page = 0; while (true) { $url = "https://dinshop.dk/landingsside-feed?p=".$page; $xml = file_get_contents($url); if (empty(trim($xml)) || stristr($xml, "<item>") === false) { break; } // den Inhalt hier speichern oder verarbeiten $page++; }
Verwenden Sie den Tag, der ein Produkt in Ihrem speziellen Feed-Format kennzeichnet. Im Beispiel ist es <item>, aber es könnte auch <product> oder etwas ganz anderes sein, je nach Ihrer eigenen Vorlage.
Paginierung in Blogs und Produktlisten
Die gleiche ?p=-Konvention wird auch in Ihrem eCommerce-Blog und auf regulären Produktseiten verwendet. Es handelt sich um ein gemeinsames Muster in Shoporama, so dass Sie die gleiche Logik überall wiederverwenden können.
Verwendung mit externen Feed-Empfängern
Die meisten Feed-Empfänger (Google Merchant Centre, Partner Ads, Pricerunner usw.) akzeptieren entweder mehrere Feed-URLs oder Sie können diese vor der Übermittlung in einer einzigen Datei zusammenfassen. Fragen Sie Ihren Werbepartner, welche Einstellung er bevorzugt.
Tipp: Wenn Sie einen der in Shoporama integrierten Feeds (Google Shopping, Pricerunner usw.) verwenden, wird die Aufteilung automatisch vorgenommen und Sie müssen sich nicht um die Paginierung kümmern.
Häufig gestellte Fragen
Warum heißt der Parameter p und nicht page?
Das ist eine historische Entscheidung im Shoporama-Frontend. Die Kurzform p wird in Blogs, Landing Pages und Feeds verwendet. Verwenden Sie daher immer ?p=. Wenn Sie ?page= schreiben, wird der Parameter ignoriert und Sie erhalten jedes Mal die erste Seite, ohne dass eine Fehlermeldung erscheint.
Beginnt die Seitenzählung bei 0 oder 1?
Bei 0. ?p=0 ergibt die erste Seite, ?p=1 die zweite Seite und so weiter. Die URL ohne jeden Parameter ergibt ebenfalls die erste Seite.
Wie viele Produkte befinden sich auf einer Seite?
Dies wird durch das Landing Page Limit gesteuert. Sie finden das Feld unter Inhalt, Landing Pages in Ihrer Verwaltung, wenn Sie die betreffende Landing Page bearbeiten. Ein guter Ausgangspunkt sind 500 bis 1000 Produkte pro Seite, aber das hängt davon ab, wie umfangreich Ihre Produktdaten sind.
Was kann ich tun, wenn mein Feed immer noch zu langsam ist?
Verringern Sie die Anzahl der Produkte pro Seite und führen Sie stattdessen mehr Aufrufe durch. Achten Sie gleichzeitig darauf, dass Sie nicht zu viele teure Felder wie nicht zwischengespeicherte Berechnungen oder komplizierte if-Konstrukte in Ihre XML-Vorlage aufnehmen. Haben Sie immer noch Probleme? Schreiben Sie an support@shoporama.dk und wir werden uns das ansehen.
Woher weiß ich, dass ich alle Seiten heruntergeladen habe?
Wenn eine Seite eine leere Liste zurückgibt oder Sie zur ersten Seite zurückleitet, gibt es keine weiteren Produkte. Stoppen Sie die Schleife dort. Dies ist am sichersten, da Shoporama den Überlauf zur ersten Seite selbst verwaltet.
Kann ich eine einzelne URL an das Google Merchant Centre senden?
Wenn Sie den integrierten Google Shopping-Feed von Shoporama verwenden, ja. Wenn Sie einen selbst erstellten Feed über eine Landing Page verwenden, müssen Sie entweder mehrere URLs übermitteln oder die Seiten vor dem Hochladen selbst zu einer Datei zusammenführen. Fragen Sie Ihren Partner, was er bevorzugt.
Bekomme ich Duplikate, wenn ein Produkt zwischen zwei Aufrufen die Seite wechselt?
Das kann vorkommen, wenn während des Herunterladens des Feeds neue Produkte erstellt oder entfernt werden. Die Wahrscheinlichkeit ist in der Praxis gering, aber wenn Sie absolut sicher sein wollen, lassen Sie die gesamte Paginierung kurz hintereinander laufen oder führen Sie eine Deduplizierung durch , nachdem Sie alle Seiten gesammelt haben.
Kann ich meinen eCommerce-Blog auf die gleiche Weise paginieren?
Ja, das können Sie. Der Blog verwendet denselben ?p=-Parameter mit standardmäßig 10 Beiträgen pro Seite. Es ist das gleiche Muster, so dass Ihre Paginierungslinks im Thema die Logik wiederverwenden können.
Sollte ich kanonische Tags auf die paginierten Seiten setzen?
Auf normalen Landing Pages setzt Shoporama automatisch das Canonical-Tag mit dem Parameter ?p=, so dass jede Seite ihr eigenes Canonical hat. Bei selbst erstellten Feeds müssen Sie sich in der Regel keine Gedanken darüber machen, da der Feed von einem Skript konsumiert und nicht von Suchmaschinen indexiert wird.
Was ist, wenn mein Anzeigenpartner nicht mit mehreren URLs umgehen kann?
Dann müssen Sie die Seiten selbst zu einer Datei zusammenstellen, bevor Sie sie übermitteln. Erstellen Sie ein kleines Skript, das alle Seiten abruft, den XML-Header ab Seite 2 entfernt und alles in eine einzige gültige XML-Datei kompiliert, die Sie auf Ihrem eigenen Server speichern. Verwenden Sie dann die URL der kompilierten Datei bei Ihrem Partner.
Brauchen Sie Hilfe? Kontaktieren Sie uns unter support@shoporama.dk.
Ähnliche Artikel
Erstellen Sie Ihre eigenen Feeds
Anleitung zur Erstellung eigener Produkt-Feeds im CSV-, XML- oder JSON-Format mit Shoporamas Custom-Feed-Funktion.
Google Shopping Feed einrichten
Anleitung zur Einrichtung des Google Shopping Feed in Shoporama, damit Ihre Produkte in Google Shopping erscheinen.
Preisshape-Feed
Anleitung zum Einrichten eines Priceshape-Feeds in Ihrem Shoporama-Webshop mittels einer XML-Datei und einer Landing Page.
Farbe und Größe in Partneranzeigen-Feed einbeziehen
Anleitung zum Hinzufügen von Farbe, Größe und Geschlecht zu Ihrem Partner Ads-Feed in Shoporama über Produktprofile und zusätzliche Felder.
Bilder auf Landing Pages
Wie man Bilder auf eine Shoporama-Landingpage hochlädt und sie mit getImages() und getSrc() korrekt in Ihrem Theme anzeigt.
Blog mit Link zu Ihrem Shop
Vollständige Anleitung zur Blog-Funktion in Shoporama - Beiträge erstellen, Veröffentlichung planen, Produkte verlinken, für Suchmaschinen...
Verwandte Funktionen
Benutzerdefinierte Feeds
Erstellen Sie maßgeschneiderte Produkt-Feeds in XML, JSON oder CSV. Wählen Sie Felder aus, filtern Sie Produkte, erweitern Sie Varianten und teilen...
Feeds
Vorgefertigte Feeds für Google Shopping, Pricerunner, Partner Ads, Kelkoo und TradeTracker. Oder erstellen Sie Ihre eigenen benutzerdefinierten...