Skip to main content

Eine Frage die wir immer wieder gestellt bekommen: Wie kann ich automatisiert neue Produkte aus einer bestimmten Kategorie importieren ohne selbst Hand anzulegen? Während wir bis dato keinen Feed Parser im Theme haben, der Anhand eines Keywords automatisch neue Produkte importiert, gibt es heute einen kleinen Workaround mit dem du, mit Hilfe von WP All Import (PRO) und unserer WP All Import Extension, einen solchen Prozess ganz einfach automatisieren kannst. Dazu braucht es nur die beiden oben genannten Plugins, einen Amazon RSS Feed deiner Wahl und ein paar Minuten Zeit (optional eine Tasse Kaffe).

UPDATE 1 – 07.02.2017 In der Originalversion des Artikels haben wir erzählt, dass die kostenlose WP All Import Version reicht. Das war, leider, totaler Käse. Sorry dafür. 🙁 Man benötigt die PRO Version, da sonst die „Download“-Funktion nicht funktioniert.

Mit einem kleinen PHP Script und der cURL Funktion, könnte man es aber auch mit der kostenlosen Version automatisieren, indem man 1x täglich die Feed XML Datei in den Ordner /wp-content/uploads/wpallimport/uploads/<hash>/blubb.xml lädt. Hier versuchen wir zeitnah eine kleine Funktion nachzuliefern!

0. Plugins installieren

Installiere, falls noch nicht passiert, bitte die WP All Import und unser WP All Import Addon (Links siehe oben). Hier muss nichts weiter eingestellt werden und wir können direkt loslegen.

1. RSS Feed suchen

Für normale Suchanfragen, oder allgemein beim Browsen auf Amazon, findet man leider keinen RSS Feed. Jedoch hat der Bereich Bestseller (https://www.amazon.de/gp/bestsellers/) für jede (Unter-)Kategorie einen eigenen RSS Feed mit dem wir wunderbar arbeiten können und der uns jeweils 10 Produkte anzeigt. Auf der „Startseite“ der Bestseller-Sektion findet man oben noch weitere Tabs: NeuerscheinungenAufsteiger des TagesAm häufigsten gewünscht und Am häufigsten geschenkt.

Nun kannst du mit WP All Import natürlich für jede Kategorie alle 5 RSS Feeds anlegen um möglichst viele Produkte automatisch zu importieren. In unserem Beispiel arbeiten wir nun aber nur mit den Neuerscheinungen (https://www.amazon.de/gp/new-releases/) um eben die neusten Produkte zu importieren.

Sobald wir auf den Tab geklickt haben sehen wir an der linken Seite nun alle Abteilungen und können hier zu unserer Wunschkategorie navigieren. Ich nehme für dieses Beispiel mal: Computer & Zubehör » Mäuse, Tastaturen & Eingabegeräte » Gaming-Mäuse. Scrollen wir hier auf der Seite nun ganz nach unten findet man den folgenden Hinweis …

Info zu Neuerscheinungen in Gaming-Mäuse

Diese stündlich aktualisierten Listen enthalten Ihre Bestseller.

RSS-Feed (Weitere Informationen)

Abonnieren: Neuerscheinungen > Gaming-Mäuse

… mit samt dem Link zum RSS Feed (https://www.amazon.de/gp/rss/new-releases/computers/605046/ref=zg_bsnr_605046_rsslink) von dieser Kategorie. Diese URL müssen wir uns kopieren und gleich in unseren WP All Import Prozess einbinden.

Schritt 2 – Der Import

Da wir ja nun die Feed URL haben, gehen wir in unserem WordPress Backend auf den Punkt WP All Import » Neuer Import. Hier wählen wir nun als erstes den Button Download von URL, geben unseren RSS Feed Link an und klicken auf Herunterladen. Abschließend wählen wir bei Neue Artikel im Dropdown den Punkt Produkte aus und klicken weiter zum zweiten Schritt. Hier siehst du nun eine Übersicht der gefundenen Informationen. Links sollte bereits item 10 vorselektiert sein und wir können somit direkt weiter zu Schritt 3.

Nun sehen wir unsere Oberfläche, die wir ja bereits aus dem Data Miner Tutorial kennen. Auf der linken Seite die auszufüllenden Textfelder und auf der rechten Seite die Informationen die wir per Drag & Drop in die Textfelder platzieren können. Wir benötigen nur den Titel und die ASIN. Die restlichen Informationen werden, sofern unter Import » Amazon eingestellt, beim Aktualisieren automatisch nachgetragen.

Nun gibt es jedoch 2 kleine Problemchen. Zum einen hat der Titel einen Zähler (#1: ) davor:

#1: Roccat Kone EMP Max Performance RGB Gaming Maus (Owl-Eye Optischer Sensor, 12.000 dpi, RGB-Beleuchtung) schwarz

… und wir haben kein Feld mit einer reinen ASIN. Diese müssen wir uns mit Hilfe von RegEx und einer kleinen PHP Funktion aus dem Link-Feld rausziehen.

https://www.amazon.de/Performance-Owl-Eye-Optischer-RGB-Beleuchtung-schwarz/dp/B01NBMNGYL/ref=pd_zg_rss_nr_computers_605046_1

Den Titel können wir Problemlos mit einer „inline“-Funktion säubern. Dazu ziehen wir den Title von rechts per Drag & Drop in das linke Feld und sehen nun die Variable {title[1]}. Davor packen wir nun die Funktion [preg_replace("/#.*?: /", "", und schließen sie danach wieder )]. Das sollte dann wie folgt aussehen:

[pastacode lang=“markup“ manual=“%5Bpreg_replace(%22%2F%23.*%3F%3A%20%2F%22%2C%20%22%22%2C%20%7Btitle%5B1%5D%7D)%5D“ message=““ highlight=““ provider=“manual“/]

 

Das wäre dann auch schon alles und der Titel sollte beim Import nun gesäubert gezogen werden.

Für die ASIN braucht es eine etwas „größere“ PHP Funktion. Dazu scrollen wir ganz nach unten zum Function Editor und fügen dort den folgenden Code ein (beachte, dass <?php und ?> bestehen bleiben und sich der Code dazwischen befindet).

15.02.2017 – Achtung, die 3. Zeile hat sich geändert, aufgrund eines „Fehlers“ in der Regex.

[pastacode lang=“php“ manual=“function%20at_get_asin(%24url)%20%7B%0A%20%20%20%20%24result%20%3D%20%22%22%3B%0A%20%20%20%20%24pattern%20%3D%20%22(%3F%3A%5Bdp%5C%5C%2F%5D)(%5Ba-zA-Z0-9%5D%7B10%7D)(%3F%3A%5B%2F%3F%5D%7C%24)%22%3B%0A%20%20%20%20%24pattern%20%3D%20escapeshellarg(%24pattern)%3B%0A%20%20%20%20preg_match(%24pattern%2C%20%24url%2C%20%24matches)%3B%0A%20%20%20%20if(%24matches%20%26%26%20isset(%24matches%5B1%5D))%20%7B%0A%20%20%20%20%20%20%20%20%24result%20%3D%20%24matches%5B1%5D%3B%0A%20%20%20%20%7D%20%0A%20%20%20%20return%20%24result%3B%0A%7D“ message=““ highlight=““ provider=“manual“/]

 

Nach dem Einfügen noch auf Save Functions klicken und nun geht’s wieder nach oben zur Box AffiliateTheme – Produktinformationen. Hier ziehen wir in das Feld Artikel-Nr. den Link {link[1]} und setzen die zweite Funktion, ähnlich wie oben um. Das sollte dann so aussehen:

[pastacode lang=“markup“ manual=“%5Bat_get_asin(%7Blink%5B1%5D%7D)%5D“ message=““ highlight=““ provider=“manual“/]

 

Vielmehr müssen wir hier eigentlich auch nicht machen. Wenn du magst, kannst du nun noch Sachen wie Kategorien oder z.B. den Post Status festlegen. Hier einfach mal schauen, was sich hinter den ganzen Feldern befindet. Sofern das erledigt ist, klicken wir unten zu Schritt 4. Für den Unique Identifier können wir z.B. von der rechten Seite das Feld guid verwenden. Die restlichen Einstellungen belassen wir so und klicken nun auf weiter zum letzten Check um dann endlich den Importvorgang zu starten.

Nach wenigen Sekunden sollte der Import dann auch schon abgeschlossen sein und wenn wir nun im Backend zum Punkt Produkte navigieren sehen wir dort nun 10 neue Produkte.

Wie anfangs erklärt haben die Produkte nun kaum Informationen hinterlegt. Diese werden beim stündlichen Aktualisierungsintervall nachgetragen. Solltest du sie direkt haben wollen, kannst du unter Debug auch einfach den Cronjob-Link für die Amazon API aufrufen.

Schritt 3 – Cronjobs

Der Import lief nun einmalig und ist nun auch gespeichert um jederzeit erneut aufgerufen werden zu können. Damit du das nun nicht täglich per Hand machen musst, kannst du bei deinem Hoster einen Cronjob dafür anlegen. Hierzu gehen wir nun auf WP All Import » Imports verwalten und sehen auch direkt unseren Eintrag. Rechts klicken wir nun auf den Link Cron Geplant und bekommen nun eine Trigger Script URL und eine Execution Script URL. Wie über den Feldern beschrieben reicht es, wenn die erste 1x am Tag läuft, bei Bedarf natürlich auch 1x stündlich –  je nachdem wie aktiv die Kategorie ist. Und die zweite alle 2 Minuten, da sie den ersten Trigger abarbeitet, sofern beim ersten Aufruf nicht alle Produkte importiert wurden (was bei 10 Produkten aber relativ unwahrscheinlich ist).

Weitere Informationen hierzu findet ihr der Cron Dokumentation von von WP All Import.

Fazit

That’s it! Mit nur wenigen Handgriffen hast du nun immer frische Produkte und musst dich, sofern einmal eingerichtet, nicht mehr wirklich um dieses Thema kümmern. Diese Anleitung kann man natürlich auch auf andere Bereiche anwenden. Sei kreativ! 🙂


#protipp importiert zunächst eine komplette Kategorie mit dem Data Miner Tutorial und haltet sie mit dem Amazon RSS Feed immer aktuell um alle Produkte auf eurer Seite zu präsentieren! 😉


Ähnliche Beiträge


Kommentare

Artur 18. März 2017 um 11:35

>>>BRAUCH schnell Hilfe<<<
Ich habe beim Design > Edit
was eingefügt und jetzt kann ich nicht mehr auf die Seite zugreifen.
Das steht dort:
Parse error: syntax error, unexpected end of file in /www/htdocs/w0158f22/total-classic.de/wp-content/themes/affiliatetheme-child/functions.php on line 17
Ich kann auch nicht mehr auf die Debbug Informationen gehen.
Bitte helft mir

Antworten

André 19. März 2017 um 13:50

Support bitte ausschließlich über das Forum 🙂

Antworten

Ferdinand 17. Februar 2018 um 11:44

Wie kann ich damit bitte mehr als immer nur diese 10 Bestseller aus der einen Kategorie importieren? Der pro Tipp mit dem Data Miner Tool funktioniert ja nicht mehr.

Antworten

André 20. Februar 2018 um 9:17

Moin Ferdinand, du hast im Backend div. Möglichkeiten.

Zum einen der Import über die normale Suche, da hast du 10 Produkte pro Seite (limitiert durch Amazon), kannst aber unten auch auf Seite 2, 3, 4, …

Des Weiteren kannst du bei Amazon irgendwelche Seiten in deinem Browser aufrufen / Filtern und diese URL dann in den ASIN Grabber geben und bekommst dann meisten ca. 30 ASINS zurück.

Und last but not least kannst du sog. Feeds angeben. Wie beim ASIN Grabber gibst du bestimmte URLs aus deinem Browser an und wir rufen diese im Intervall X auf und holen alle neuen ASINS und importieren diese.

Antworten

Frank 14. Dezember 2018 um 9:40

Seit heute funktionieren die Feeds offenbar nicht mehr… . Doof.

Antworten

André 18. Dezember 2018 um 13:56

Probleme bitte im Forum melden. 🙂

Antworten

Du hast eine Frage oder eine Meinung zum Artikel? Teile sie mit uns!

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*
*