Archiv

Artikel Tagged ‘modul’

OXID Modul tabsl|MediaURL

1. September 2010

Bei einer guten SEO steht auch die Geschwindigkeit der Website im Fokus.

Mit der Extension tabsl|MediaURL haben Sie die Möglichkeit, für Resource- und Bild-Dateien eine eigene URL zu hinterlegen und somit die Performance Ihres Online-Shops zu verbessern.

Folgende Features bzw. Konfigurationsmöglichkeiten stehen zur Verfgügung:

  • Dateien auf einen eigenen Server (Mediaserver) auslagern
  • Javascript, CSS und Bilddateien von anderer URL (Server) laden
  • Kategorie- und Artikelbilder von anderer URL (Server) laden

Hintergrundinformationen: ServeFromCookielessDomain und ParallelizeDownloads

Das Modul gibt es kostenlos im OXID eXchange zum Download.

Allgemein , , , , ,

OXID eShop: Modul TMP löschen

17. Juni 2010

Wenn ihr regelmäßig mit dem OXID eShop arbeitet bzw. entwickelt, kennt ihr sicher das Problem, dass Änderungen nicht direkt im Frontened angezeigt werden.

Erst nach Löschen des tmp-Verzeichnisses und somit löschen des Caches, sind die Modifizierungen sichtbar.

Matthias von den Musterdenkern hat da bereits ein kleines Modul geschrieben, welches bei jedem Seitenaufbau das besagte Verzeichnis löscht. 

Nachdem dies bei wirkliche jedem Aufruf der Fall ist benötigt dies zwar ein bisschen Performance, jedoch sollte dies – vor allem in einer Entwicklungsumgebung – kein Problem sein.

Leider ist bei oben genannten Modul ein kleiner Schönheitsfehler vorhanden. Es wird immer das Verzeichnis /tmp/ geleert. Jedoch kann man in der config.inc.php auch ein anderes Verzeichnis dafür hinterlegen. Ich habe das Script nun soweit angepasst, dass immer der aktuelle Pfad aus der config-Datei genommen wird.

Download: http://blog.tabsl.eu/public/mude-dev_02.zip

Programmierung , , ,

osCommerce: DHL Paketstatus XML API

4. September 2009

DHL Es schaut doch wesentlich schöner aus, wenn der Paketstatus in die eigene Website und somit ins eigene Design integriert werden kann, als immer nur auf den DHL-Link zu verweisen.

Jedoch habe ich nach gründlicher Recherche keine Informationen zu einer Schnittstelle gefunden. Nachdem wir beruflich selbst über DHL versenden, habe ich dort einmal eine Anfrage gestellt.

Das Ergebnis: Prinzipiell gibt es eine API, basierend auf XML, mit zwei unterschiedlichen Zugriffsmöglichkeiten.

Einen gesicherten Zugang für Geschäftskunden und einen offenen für Privatkunden. Die sogenannte “Track & Trace DASS – Online Direktaufrufschnittstelle” bekommen DHL-Kunden beim technischen Support. Dies ist ein mehrseitiges PDF mit genauer Anleitung und Beispielen. Neben der aktuellen Statusabfrage umfasst diese auch noch den kompletten Sendungslauf, sowie Zustellinformationen und -nachweis.

Aber widmen wir uns nun der public API. Mit dieser kann man sich den aktuellen Paketstatus und ein paar zusätzliche Details holen kann. Folgend ein Beispiel anhand der Paketnummer 258263342319. Die Postleitzahl muss nicht mehr zwingend übergeben werden.

Aufruf (GET)

http://nolp.dhl.de/nextt-online-public/direct/nexttjlibpublicservlet?xml=<?xml version=”1.0″ encoding=”ISO-8859-1″?><data  appname=”nol-public” password=”anfang” request=”get-status-for-public-user” language-code=”de”><data piece-code=”258263342319″ zip-code=”71287″></data></data>

Antwort (XML)

<?xml version=”1.0″ encoding=”ISO-8859-1″ ?>
<data>
<data name=”piece-status-public-list” _piece-code=”726510758012″ _zip-code=”27472″ code=”0″>
<data _build-time=”2007-02-01 13:30:15.000899″ name=”piece-status-public” piece-id=”0″ leitcode=”258263334332″ piece-identifier=”72651075801″ piece-code=”726510758012″ identifier-type=”1″ recipient-name=”Appiarius” street-name=”Nordersteinstr.” house-number=”36″ postal-code=”27472″ city-name=”Cuxhaven” last-event-timestamp=”11.01.07 09:42″ shipment-type=”" status-next=”" status=”Die Sendung wurde ausgeliefert.” error-status=”" delivery-event-flag=”1″ />
</data>
</data>

Beispiel (PHP)

$dhlpaketnr = “xxx”;
if(!empty($dhlpaketnr)) {
$dhlxml = simplexml_load_file(“http://nolp.dhl.de/nextt-online-public/direct/nexttjlibpublicservlet?xml=%3C?xml%20version=%221.0%22%20encoding=%22ISO-8859-1%22?%3E%3Cdata%20%20appname=%22nol-public%22%20password=%22anfang%22%20request=%22get-status-for-public-user%22%20language-code=%     22de%22%3E%3Cdata%20piece-code=%22%20″.$dhlpaketnr.”%22%20zip-code=%22%22%3E%3C/data%3E%3C/data%3E”);
if($dhlxml->data->data["piece-status"] == 0) {
echo ‘<br />’;
echo ‘Paketnummer: ‘.$dhlpaketnr.’<br />’;
echo ‘Empfänger: ‘.$dhlxml->data->data["recipient-name"].’<br />’;
echo ‘Status: ‘.$dhlxml->data->data["status"];
echo ‘Datum: ‘.$dhlxml->data->data["last-event-timestamp"].’<br />’;
} else {
echo ‘<br />’;
echo ‘<i>Es konnten keine zu diesem Paket ermittelt werden!</i>’;
}
// alle informationen
// print_r($dhlxml);
}

Sollte der  piece-status nicht 0 sein, gab es ein Problem mit der Anfrage. Jedoch gibt es hier eine Fehlerliste mit ca. 30 Codes, diese ist aber jedoch wieder nur für DHL-Kunden.

Nachdem ich diese Schnittstelle als erstes in einen osCommerce-Shop integriert habe, gibt´s diese dort auch nochmal zum Download, bzw. Support im Forum. Andere Contribs und Erweiterung zu osCommerce von mir kann man hier einsehen. In Kürze wird auch noch ein Modul für den OXID eShop folgen.

Programmierung , , , , , , ,