SpreadshirtRandomProduct
Spreadshirt hat den diesem Script zugrundeliegenden RSS-Feed drastisch geändert, so dass keinerlei Informationen mehr ausgelesen werden können. Damit habe ich die Entwicklung von SRP eingestellt. Zugriffe auf den Spreadshop sind noch über die Spreadshirt-eigene API möglich. Mehr Infos…
Due to massive changes in the rss feed of spreadshirt, this script is not working anymore. I stopped the development because of too much missing infos in the rss feed. If you want to have access to your spreadshop data, try using the Spreadshirt API. More Infos…
Was ist SRP - SpreadshirtRandomProduct?
SpreadshirtRandomProduct (oder kurz “SRP”) ist ein kleines PHP-Script, welches ich in meiner Freizeit entwickelt habe. Es liest die Daten aus dem Spreadshirt-Shop-RSS aus und gibt daraus ein zufälliges Produkt aus. Das Script ist weitestgehend konfigurierbar, sodass man eigentlich alles einstellen kann.
UPDATE! Spreadshirt hat einige Dinge am RSS-Feed geändert. Deswegen ist jetzt die neue Version 0.6 von Nöten, damit alles wieder korrekt dargestellt wird.
SRP Versions-Info und Changelog
- Version 0.1 (25.3.2006)
- Version 0.1b (26.3.2006)
- Some little bug fixes, new parameter html_linebreaks
- Version 0.2 (15.4.2006)
- New external config file
- New parameter: newest product
- New parameter: configurable error message
- New parameter: possibility to show multiple products
- multiple configurations possible
- Version 0.3 (6.5.2006)
- New parameter: currency
- New parameter: shop from Europe or USA
- New parameter: image size
- New parameter: show front or back of product
- New functions: get information of title, image, price etc.
- Version 0.3b (17.5.2006)
- bug fixed in function configchange
- bug fixed: if libiconv is not installed, the script now stops (and doesn’t crash with a error)
- Version 0.3c (21.10.2006)
- bug fixed: no more warnings about undefined constants in the error log
- Version 0.4 (22.10.2007)
- bug fixed: now works with the new spreadshirt RSS feed
- bug fixed: some little bugs inside
- removed: removed some old functions (and related parameters)
- Version 0.4b (27.10.2007)
- new: with rss cache
- Version 0.4c (9.11.2007)
- bug fixed: now works with the new RSS feed url
- removed: some old parameters
- Version 0.5 (18.3.2008)
- bug fixed: now works with new rss feed, which has additional product information from spreadshirt
- Version 0.6 (11.1.2009)
- spreadshirt changed the URL of the product image
- ToDo: Umbau von SRP auf die Spreadshirt-SOAP-Schnittstelle anstatt des RSS-Feeds..
SRP Download
SRP gibts hier zum Download als ZIP-File: SRP Version 0.6 (ca. 7kB)
Folgende Dateien sind im ZIP-File enthalten:
- srp.inc.php: das Haupt-Script
- srp_config.inc.php: die Konfigurations-Datei
- lastRSS.php: RSS-Reader, der von SRP benutzt wird (Autor: Vojtech Semecky)
- index.php: Demo-HTML-Datei
Und so funktionierts
Einfach die im ZIP-File enthaltenen Dateien auf deinen Server kopieren (PHP benötigt!). Dann kann man SRP wie folgt einbinden:
include ("srp.inc.php");
Dann kann man ein neues SRP-Objekt erzeugen:
$product = new SpreadshirtRandomProduct($config);
Dann kann man mit verschiedenen Funktionen auf die Informationen zugreifen:
print ($product->getTitle()); print ($product->getImage());
“$config” ist dabei der Name des Konfigurations-Arrays aus der Konfigurations-Datei. Hier können auch mehrere Arrays mit unterschiedlichen Namen angelegt werden. Somit kann man mehrere SRP-Objekte mit mehreren Konfigurationen erzeugen:
// Zeigt Produkt entsprechend der Konfiguration "config" an $product = new SpreadshirtRandomProduct($config); // Zeigt Produkt entsprechend der Konfiguration "differentconfig" an $product->new SpreadshirtRandomProduct($differentconfig);
Funktions-Übersicht
| getTitle() | Liefert den Titel des aktuellen Produkts |
| getDescription() | Liefert die Beschreibung des aktuellen Produkts |
| getImage() | Liefert den Image-HTML-Tag des aktuellen Produkts |
| getPrice() | Liefert den Preis des aktuellen Produkts |
| getLink() | Liefert den Link auf das aktuelle Produkt |
| isAdditionalProduct() | Liefert true, wenn Item eine Zusatzprodukt-Info von Spreadshirt und kein “normales” Produkt ist |
| setItem() | Wählt ein neues Zufallsprodukt |
| getErrorState() | liefert true, wenn ein Fehler aufgetreten ist, ansonsten false |
| getErrorLog() | Liefert die Fehlermeldungen, wenn Fehler aufgetreten sind, sonst den leeren String |
SRP-Parameter
Im Folgenden eine Übersicht über alle Konfigurations-Parameter:
| $config[”shop_id”] | die ID des Shops, dessen RSS-Feed gelesen werden soll |
| $config[”language”] | NEU: Gibt die Shop- und RSS-Sprache an (de, en, us, fr, pl, …) |
| $config[”region”] | NEU: Gibt die Region an, aus der man kommt. Häufig identisch mit der Sprache… |
| $config[”charset”] | Gibt den Zeichnsatz an, in dem der RSS-Feed ausgeliefert wird (iso-8859-1 für West-Europa, iso-8859-2 z.B. für Polen) |
| $config[”img_size”] | Gibt die Größe des Bildes an (small = 42px, medium = 130px, big = 192px) |
| $config[”img_side”] | Gibt an, ob die Vorderseite oder die Rückseite des Produkts gezeigt wird (1 = Vorderseite, 2 = Rückseite) |
| $config[”show_additional_products”] | Gibt an, ob zusätzliche Produktinfo-Items von Spreadshirt angezeigt werden sollen ode rnicht (true = anzeigen, false = nicht anzeigen) |
| $config[”show_random”] | Gibt an, ob ein Zufalls-Produkt oder das letzte Produkt angezeigt werden soll (true = Zufall, false = letztes) |
| $config[”error_nofeed”] | Fehlermeldung, wenn Feed nicht gelesen werden konnte (inkl. HTML-Tags) |
| $config[”error_noproduct”] | Fehlermeldung, wenn keine Produkte im Feed sind (inkl. HTML-Tags) |
| $config[”cache_dir”] | NEU: Das Cache-Verzeichnis (chmod 777!). Wenn Inhalt der Variable leer, dann ist der Cache abgeschaltet |
| $config[”cache_time”] | NEU: Die Cache-Zeit in Sekunden, am besten zwischen 3600 und 14400 (1-4 Stunden) |
Autor und Rechtliches
Dieses kleine Script ist kein offizielles Spreadshirt-Angebot, sondern ein Freizeit-Projekt von mir, Marc Nilius. Ich gebe keine Garantie/Gewährleistung auf die korrekte Funktion des Scripts. Das Script wird im Rahmen der GPL bereitgestellt.
Anregungen und Wünsche zum Script bitte per E-Mail an mail@computerservicewissen.de. Weitere Informationen zu mir und meinem Unternehmen findet Ihr auf den anderen Seiten dieser Website. :-)