Shop ohne Grenzen - OXID eSales
Shop ohne Grenzen - OXID eSales
Shop ohne Grenzen - OXID eSales
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
PHP Journal<br />
Feature<br />
Foto: Mathias Vietmeier<br />
Info<br />
Auf einen Blick<br />
»Seit Kurzem gibt es das kommerzielle<br />
<strong>Shop</strong>-System Oxid<br />
E-<strong>Shop</strong> auch in einer Community-Version,<br />
die unter der GPL-<br />
Lizenz vertrieben wird.<br />
»Der Workshop zeigt, wie Sie<br />
den <strong>Shop</strong> installieren und<br />
optimal konfigurieren.<br />
Das brauchen Sie<br />
»Apache ab 1.3 mit<br />
mod_rewrite Erweiterung.<br />
»PHP ab 5.2.0 – empfohlen:<br />
PHP 5.2.6.<br />
»MySQL ab 5.0.33.<br />
»Für den Apache Server müssen<br />
die Variablen REQUEST_URI oder<br />
SCRIPT_URI vorhanden sein.<br />
»PHP-Erweiterungen: GDlib<br />
Version 2.x, MySQL-Modul für<br />
MySQL 5, bcmath, php-xml,<br />
libxml2, iconv-extension.<br />
»PHP-4-Kompatibilitätsmodus<br />
muss ausgeschaltet sein:<br />
(php.ini: zend.ze1_<br />
compatibility_mod = OFF).<br />
allow_url_fopen oder<br />
fscockopen auf Port 80<br />
müssen möglich sein.<br />
Open-Source-Webshop Oxid E-<strong>Shop</strong> 4.0 CE<br />
<strong>Shop</strong> <strong>ohne</strong> <strong>Grenzen</strong><br />
Den Oxid E-<strong>Shop</strong>, bislang nur in einer kommerziellen Version verfügbar, gibt es<br />
seit Kurzem auch als kostenlose Open-Source-Version. Von Andreas Ziethen<br />
»Seit rund fünf Jahren entwickelt und vertreibt die<br />
Firma Oxid Esales AG das kommerzielle <strong>Shop</strong>-<br />
System Oxid E-<strong>Shop</strong>. Bisher war die Software als Professional-Edition<br />
(PE) und als Enterprise-Edition (EE) erhältlich.<br />
Im Oktober 2008 wurde dieVersion 4.0 released und<br />
– für viele überraschend – wurde eine weitereVersion vorgestellt:<br />
die Oxid E-<strong>Shop</strong> Community-Edition (CE), die als<br />
Open-Source-Software, lizenziert unter GPLV3, nun auch<br />
kostenlos erhältlich ist (auf Heft-DVD oder Download unter<br />
www.oxid-esales.com). Die CE unterscheidet sich kaum<br />
von der PE, hat denselben Funktionsumfang und eignet<br />
sich somit hervorragend für einen preisgünstigen Einstieg<br />
in die Welt des E-Commerce.<br />
Der Oxid E-<strong>Shop</strong> bringt von Haus aus alle für einen<br />
Online-<strong>Shop</strong> wichtigen Features mit:SEO-URLs, Cross-Selling,<br />
Produktvarianten,beliebig verschachtelbare Kategorien,<br />
Mehrsprachigkeit, Web-2.0-Features et cetera. Die<br />
Software basiert auf PHP und MySQL, ist konsequent objektorientiert<br />
programmiert und reizt in der aktuellenVersion<br />
nun endlich auch PHP-5-Features voll aus. Besonders<br />
interessant ist die integrierte Modulschnittstelle, die es<br />
PHP-Entwicklern erlaubt, den <strong>Shop</strong> nahezu unbegrenzt<br />
anzupassen und zu erweitern. Bevor wir uns genauer ansehen,<br />
wie solche Erweiterungen integriert werden<br />
können, werfen wir zunächst einen Blick auf die Systemvoraussetzungen<br />
und die Installation.<br />
»Systemvoraussetzungen«<br />
Der <strong>Shop</strong> kommt mit den meisten gängigen Webhosting-<br />
Konfigurationen unter Linux/Unix problemlos zurecht.<br />
Wer die Software lokal testen möchte, kann sie auch unter<br />
Verwendung eines sogenanntenWAMP-Pakets (zum Beispiel<br />
XAMPP) problemlos auf einemWindows-Rechner installieren<br />
(siehe Kasten »Das brauchen Sie«).<br />
Je nach Konstellation, also der Anzahl der Kategorien<br />
und der Zahl der Artikel im Warenkorb et cetera, kann es<br />
notwendig sein, das memory_limit von PHP etwas anzuheben.<br />
Empfohlen wird ein Wert von 30 MByte.<br />
Autor<br />
Andreas Ziethen ist seit mehr als<br />
zehn Jahren als PHP-Entwickler<br />
mit dem Schwerpunkt E-Commerce<br />
tätig. Er bietet Workshops<br />
zu PHP-Themen sowie Schulungen<br />
zum Oxid E-<strong>Shop</strong> an.<br />
Ea.ziethen@anzido.com<br />
22 PHP Journal 1/2009
PHP Journal<br />
Feature<br />
»Installation«<br />
Im Normalfall ist die Installation innerhalb weniger<br />
Minuten erledigt:<br />
n Inhalt des Installations-Archivs per FTP in ein via<br />
Webbrowser erreichbares Verzeichnis kopieren.<br />
Wir nehmen an, das Verzeichnis ist erreichbar<br />
unter http://www.meinedomain.de/oxid/ oder<br />
lokal: http://localhost/oxid/.Es sollte sichergestellt<br />
werden, dass der Webserver-Prozess Schreibrechte<br />
auf das <strong>Shop</strong>-Verzeichnis und seine Unterverzeichnisse<br />
hat.<br />
n Eine leere Datenbank anlegen beziehungsweise<br />
die Zugangsdaten für die Datenbank bereithalten.<br />
n Das <strong>Shop</strong>-Verzeichnis via Webbrowser aufrufen<br />
(http://www.meinedomain.de/oxid/).Es erscheint<br />
der Installationsassistent. Hier die Sprache für die<br />
Installationsmenüs sowie den Standort auswählen<br />
– der Standort spielt eine Rolle für diverse<br />
Voreinstellungen.<br />
n Im nächsten Schritt die Lizenzbedingungen akzeptieren<br />
und weiter zum folgenden Schritt, wo<br />
nun die Datenbankzugangsdaten einzutragen<br />
sind.<br />
n Im nächsten Schritt erscheinen zur Kontrolle die<br />
Installationspfade,die im Normalfall unverändert<br />
übernommen werden können. Also einfach auf<br />
Daten jetzt speichern klicken.<br />
n Springt der Assistent dann <strong>ohne</strong> Fehlermeldung<br />
zum letzten Schritt,ist die Installation erfolgreich<br />
abgeschlossen und der <strong>Shop</strong> kann aufgerufen<br />
werden.<br />
»Erste Schritte«<br />
Nachdem der <strong>Shop</strong> erfolgreich installiert wurde,<br />
empfiehlt es sich, zunächst einmal ein wenig im<br />
Auf der Homepage von Oxid gibt es aktuelle Downloads und Infos.<br />
Info<br />
Externe Services –<br />
Oxid E-Fire<br />
Die Oxid E-Fire-Plattform bietet jede Menge<br />
zusätzliche Services an, die quasi per Mausklick<br />
aktiviert werden können und die größtenteils<br />
transaktionsbasiert abgerechnet<br />
werden. Solche Services sind zum Beispiel:<br />
n Bonitätsprüfung Creditpass<br />
n Bonusprogramm Webmiles<br />
n Factfinder On-Site-Search<br />
n Ebay<br />
n Paypal<br />
n Diverse Preissuchmaschinen<br />
n Diverse Produktportale<br />
n Econda <strong>Shop</strong>-Controlling<br />
Ewww.oxid-esales.com/de/produkte/<br />
oxid-efire<br />
Frontend zu stöbern, um die diversen Features<br />
quasi aus Kundensicht kennenzulernen.<br />
Wer sich sofort das Backend ansehen möchte,<br />
der ruft – am besten in einem zweiten Browser-<br />
Tab – den <strong>Shop</strong> noch einmal auf und hängt an die<br />
<strong>Shop</strong>adresse noch ein /admin/ an. Die Default-<br />
Login-Daten für den Adminbereich lauten admin /<br />
admin und können in der Benutzerverwaltung geändert<br />
werden. Auf der Home-Seite des Backends<br />
finden sich übersichtlich die Hauptmenüpunkte, die<br />
für die <strong>Shop</strong>-Administration von Bedeutung sind.<br />
Der Bereich Stammdaten enthält alle Einstellungen,<br />
die vor einem Onlinegang mindestens einmal angepasst<br />
werden müssen. Besonders hinter dem Untermenüpunkt<br />
Grundeinstellungen verbergen sich<br />
jede Menge wichtiger Einstellmöglichkeiten.Vieles<br />
ist selbsterklärend – manches nicht. Bei Unklarheiten<br />
genügt ein Klick auf den Link Hilfe startenam<br />
unteren Bildrand, und es öffnet sich die Onlinehilfe,<br />
die ständig überarbeitet und erweitert wird.<br />
Ich möchte hier lediglich ein paar Hinweise zu<br />
Einstellungen geben, die nicht auf den ersten Blick<br />
verständlich sind und auch in der Onlinehilfe noch<br />
nicht ausreichend erläutert werden:<br />
n Stammdaten, Grundeinstellungen, Stamm: Der<br />
Produktivmodus sollte aktiviert werden, sobald<br />
der <strong>Shop</strong> fertig konfiguriert und bestückt ist und<br />
online geht. Damit werden einige Caching-Funktionen<br />
aktiv, die im Entwicklungsprozess eher<br />
stören, für den Live-Betrieb aber sehr nützlich<br />
sind. Bezüglich des Cachings sei noch angemerkt,<br />
dass es bei tiefergreifendenAnpassungen<br />
wie Datenbankerweiterungen und Ähnlichem<br />
ratsam ist, das tmp-Verzeichnis des <strong>Shop</strong>s zwischendurch<br />
zu leeren. Hier werden unter anderem<br />
Objekt- undTabellenstrukturen zwischengespeichert.<br />
Als SMTP-Server kann ein gültiger<br />
Mailserver inklusive Zugangsdaten eingetragen<br />
werden. In den meisten Fällen reicht es aus, hier<br />
localhost einzutragen und die Felder für die Zugangsdaten<br />
leer zu lassen.<br />
n Stammdaten, Grundeinstellungen, Einstell.: Hier<br />
soll auf auf den Block Administrationsbereich hingewiesen<br />
werden,speziell auf die Option Zusätzliche<br />
Informationen vom Oxid Server laden. Die<br />
Aktivierung dieser Option stellt nach erneutem<br />
Login in denAdminbereich ein zusätzliches Menü<br />
E-Commerce Services zurVerfügung. Dort finden<br />
sich viele Möglichkeiten,den <strong>Shop</strong> an externe Services<br />
wie Affiliateprogramme, Produktsuchmaschinen,<br />
Bonitätsprüfung, Controlling et cetera<br />
anzubinden.Manche dieser Services werden mittels<br />
der Oxid-eigenen Plattform E-Fire realisiert.<br />
n Stammdaten, Grundeinstellungen, Performance:<br />
Standardmäßig sind hier fast alle Optionen aktiviert.<br />
Es empfiehlt sich, vor dem Onlinegang zu<br />
kontrollieren, welche Features tatsächlich genutzt<br />
werden, und unbenutzte Features zu deaktivieren,<br />
um für eine bessere Performance des<br />
<strong>Shop</strong>-Systems zu sorgen.<br />
n Stammdaten, Grundeinstellungen, SEO: Hier ist<br />
besonders das Feature Statische URLs von Interesse.FürArtikel-<br />
und Kategorieseiten werden die<br />
jeweiligen SEO-URLs automatisch generiert. Mit<br />
Hilfe der statischen URLs können nun aber zusätzlich<br />
beliebige weitere URLs innerhalb des<br />
<strong>Shop</strong>s in suchmaschinenfreundliche URLs verwandelt<br />
werden.Zahlreiche Beispiele sind bereits<br />
vorkonfiguriert, anhand derer man sich die Systematik<br />
leicht selbst erschließen kann.<br />
Für alle weiteren Einstellmöglichkeiten im Administrationsbereich<br />
des Oxid E-<strong>Shop</strong>s bietet die Onlinehilfe<br />
zahlreiche nützliche Informationen.Außerdem<br />
gibt es auf der Oxid-Homepage zahlreiche Informationsquellen<br />
mit weiteren Informationen<br />
(siehe Kasten »Hilfreiche Links« auf Seite 24).<br />
s<br />
1/2009 PHP Journal 23
PHP Journal<br />
Feature<br />
»Template-Anpassungen«<br />
Der Oxid-<strong>Shop</strong> verwendet die Template-Engine<br />
Smarty.Wer bereits in anderen Projekten mit Smarty<br />
gearbeitet hat, wird sich in den Oxid-Templates<br />
schnell zurechtfinden. DieTemplates befinden sich<br />
im Verzeichnis /out/basic/tpl. Die zugehörige CSS-<br />
Datei liegt in /out/basic/src/oxid.css. Die Templates<br />
bestehen aus reinen HTML-Dateien, die mit<br />
jedem gängigen Editor bearbeitet werden können.<br />
Alle dynamischen Inhalte werden über sogenannte<br />
Smarty-Tags eingebunden, die in den Oxid-Templates<br />
mittels [{ … }] kenntlich gemacht sind.<br />
Es gibt darüber hinaus die Möglichkeit, einfache<br />
farblicheAnpassungen über das Look-and-Feel-<br />
Modul im Adminbereich vorzunehmen (Stammdaten<br />
und Look&Feel). Aber Vorsicht: Niemals die<br />
CSS-Datei direkt bearbeiten und mit dem Look-and-<br />
Feel-Modul arbeiten. Individuelle Änderungen an<br />
der CSS-Datei gehen verloren, sobald Änderungen<br />
über das Look-and-Feel-Modul vorgenommen werden.Also:<br />
Entweder die CSS-Datei bearbeiten oder<br />
das Look-and-Feel-Modul nutzen.<br />
»Ein Blick unter die Haube«<br />
Bevor wir uns die Modulschnittstelle genauer ansehen,<br />
soll ein kurzer Blick in die Innereien des<br />
Oxid E-<strong>Shop</strong>s geworfen werden: Das gesamte<br />
<strong>Shop</strong>-System ist nach dem MVC aufgebaut. Es<br />
wird kein bereits bestehendes Framework genutzt,<br />
sondern Oxid hat sein eigenes Framework<br />
entwickelt. Dieses stellt eine saubere Trennung<br />
zwischen den beiden Schichten View und Model<br />
zur Verfügung, was bereits in der Verzeichnisstruktur<br />
deutlich wird:View-Klassen finden wir im Verzeichnis<br />
views,die Model-Klassen im Verzeichnis<br />
core. Darüber hinaus findet auch das Pattern des<br />
Decorators in Form von sogenannten Komponenten<br />
Anwendung. Die Komponenten sind im Verzeichnis<br />
views zu finden und am Präfix oxcmp_…<br />
zu erkennen.<br />
Allen, die sich näher mit der Klassenstruktur beschäftigen<br />
möchten, sei die API-Dokumentation<br />
empfohlen (siehe Kasten »Hilfreiche Links«).<br />
Neu ist seit der Version 4.0, dass Objekteigenschaften<br />
weitgehend protected sind und nur über<br />
sogenannte GettersundSetters – also eigens dafür<br />
zuständige Methoden angesprochen werden<br />
können. So besteht deutlich mehr Kontrolle über<br />
die Eigenschaften, und man wird bei eigenen Erweiterungen<br />
automatisch zu einer sauberen Programmierung<br />
gezwungen. Die Getters finden auch<br />
auf Template-Ebene Verwendung. So wird zum<br />
Beispiel einArtikelpreis nicht einfach als Eigenschaft<br />
ausgegeben, sondern mittels [{$product->get<br />
FPrice()}] abgerufen. Die get- und set-Methoden<br />
können durch Module überladen werden, was<br />
zahlreiche Möglichkeiten für eigene Modifikationen<br />
bietet.<br />
Als Ergebnis eines fast zweijährigen Refactorings<br />
stellt sich der gesamte Quellcode nun sehr aufgeräumt<br />
und übersichtlich dar.<br />
»Eigene Module programmieren«<br />
Wie schon erwähnt,liegt ein wesentlicher Pluspunkt<br />
des Oxid E-<strong>Shop</strong>s darin, dass er nahezu unbegrenzt<br />
an individuelle Bedürfnisse angepasst<br />
werden kann. Beim optischen Erscheinungsbild<br />
sind auf Basis selbst erstellter Templates <strong>ohne</strong>hin<br />
keine <strong>Grenzen</strong> gesetzt. Aber auch im Blick auf die<br />
Funktionalitäten des <strong>Shop</strong>s stehen dem Entwickler<br />
dank der integrierten Modulschnittstelle alle<br />
Möglichkeiten offen – und zwar, <strong>ohne</strong> eine einzige<br />
Zeile des Originalcodes zu verändern. Das ist wichtig,<br />
weil nur so die Updatefähigkeit des Systems<br />
erhalten bleibt. Wie solche Anpassungen erfolgen<br />
können, soll an einem Beispiel verdeutlicht werden.<br />
Nehmen wir an,wir möchten erreichen, dass bei<br />
allenArtikeln, deren Artikelnummer mit 2 beginnt,<br />
vor dem Preis noch der Hinweis TOP-Preis angezeigt<br />
wird. Wir benötigen dafür ein Modul der<br />
Klasse oxarticle,weil dies die Klasse ist, in der das<br />
Artikel-Objekt definiert wird.Also legen wir unterhalb<br />
des Ordners /modules ein Verzeichnis an, das<br />
wir zum Beispiel top_price nennen, und darin eine<br />
Datei mit dem Namen top_price.php. Diese Datei<br />
bekommt folgenden Inhalt:<br />
<br />
Was hier auf den ersten Blick verwirrt, ist die Extension<br />
von top_price_parent. Dahinter verbirgt<br />
sich eine eigene Logik des Oxid E-<strong>Shop</strong>s, die dafür<br />
sorgt, dass eine Klasse auch durch mehrere Module<br />
überladen werden kann, die dann einfach mit<br />
einem &-Zeichen hintereinander gehängt werden.<br />
Die (transparente) Klasse top_price_parent wird<br />
vom <strong>Shop</strong> automatisch generiert. Man sollte sich<br />
hier von Anfang an angewöhnen, eigene Modulklassen<br />
immer von ihrer transparenten parent-<br />
Klasse abzuleiten.<br />
Nun müssen wir unser Modul im Adminbereich<br />
unter Stammdaten, Grundeinstellungen, System<br />
und Module noch registrieren. Dazu tragen wir in<br />
die Box installierte Module in Ihrem <strong>Shop</strong> folgendes<br />
ein:<br />
oxarticle => top_price/top_price<br />
Der Assistent , der den Anwender bei der Installationdes Oxid E-<strong>Shop</strong>s unterstützt.<br />
Die Moduleinträge erfolgen nach dem Muster:<br />
Name der Originalklasse => Pfad zur Moduldatei<br />
(<strong>ohne</strong> .php). Nach dem Speichern der Einstellungen<br />
werden bei allen Artikeln, deren Artikelnummertn<br />
mit 2 beginnt, die Preise entsprechend geändert<br />
dargestellt.<br />
24 PHP Journal 1/2009
PHP Journal<br />
Feature<br />
Das Beispiel mag nicht besonders sinnvoll<br />
erscheinen, aber es ging hier lediglich<br />
darum, so kurz und knapp wie möglich das<br />
Potenzial aufzuzeigen, welches die Modulschnittstelle<br />
des Oxid E-<strong>Shop</strong>s in sich trägt.<br />
Nahezu sämtliche view- und core-Klassen<br />
des <strong>Shop</strong>s können auf diese Weise überladen<br />
und auch mit eigener Funktionalität gefüllt<br />
werden. Wer tiefer in die Materie einsteigt<br />
und sich ein wenig mit den original<br />
PHP-Klassen des <strong>Shop</strong>s beschäftigt, wird<br />
auch schnell entdecken, dass es problemlos<br />
möglich ist, eigene view- und core-Klassen<br />
zu integrieren und damit alle nur erdenklichen<br />
individuellen Erweiterungen vorzunehmen.Vor<br />
diesem Hintergrund kann man<br />
beim Oxid-<strong>Shop</strong> mit Recht von einem E-<strong>Shop</strong><br />
<strong>ohne</strong> <strong>Grenzen</strong> sprechen.<br />
Das Wichtigste bei alledem ist aber, dass – sofern ein<br />
paar Grundregeln beachtet werden – die Oxid-eigenen<br />
Programmklassen unberührt bleiben können und somit<br />
die Update-Fähigkeit des Systems sowie die Kompatibilität<br />
mit zum Beispiel hinzugekauften Modulen erhalten<br />
bleibt. In diesem Zusammenhang bietet Oxid im Rahmen<br />
der sogenannten Oxid-Academy Schulungen und für Ihre<br />
Partner auch die Möglichkeit an, eigene Module zertifizieren<br />
zu lassen, um so einen gewissen Qualitätsstandard<br />
zu sichern.<br />
»Das Backend erweitern«<br />
Auch der Administrationsbereich des Oxid E-<strong>Shop</strong>s kann<br />
beliebig modifiziert und erweitert werden. Die Menüpunkte<br />
undTabs werden mittels einer Datei menu.xml im<br />
Verzeichnis admin gesteuert.Allerdings gilt auch hier: Die<br />
Originaldatei sollte unberührt bleiben. Stattdessen kann<br />
man eigene menu.xml-Dateien in beliebig viele Unterverzeichnisse<br />
innerhalb des modules-Verzeichnisses legen.<br />
Diese eigenen menu.xml-Dateien müssen genauso aufgebaut<br />
sein wie die Originaldatei. Zwingend notwendig<br />
sind der XML-Header und die ersten beiden Container.Nun<br />
fügt man entweder eigene Hauptmenüpunkte ein (MAIN-<br />
MENU-Container) oder legt innerhalb von vorhandenen<br />
Haupt- oder Untermenücontainern zusätzliche Menüpunkt<br />
oder Tabs an. Der Parameter cl steuert dabei,<br />
welche view-Klasse aufgerufen wird. Bevor man hier<br />
selbst tätig wird, sollte man einen ausgewählten Bereich<br />
des Backends, zum Beispiel die Artikelverwaltung, etwas<br />
genauer studieren.<br />
Dieview-Klassen des Backends können übrigens genauso<br />
durch Module überladen werden wie die Klassen des Frontends.<br />
So lassen sich eigene Funktionalitäten für das Backend<br />
recht einfach als Erweiterungen der vorhandenen<br />
Funktionen gestalten.<br />
»Externe Services: Oxid E-Fire«<br />
Um einen Online-<strong>Shop</strong> erfolgreich zu betreiben,führt heute<br />
kein Weg mehr vorbei an diversen externen Services: Exporte<br />
für Produktportale und Preissuchmaschinen,Anbindung<br />
anAuktionsplattformen,Affiliateprogramme, Bonitätsprüfungen,<br />
<strong>Shop</strong>-Controlling et cetera. All das bietet<br />
Oxid über die hauseigene Serviceplattform Oxid E-Fire an.<br />
Ein Online-<strong>Shop</strong> auf Basis von Oxid E-<strong>Shop</strong> CE (www.jamon.de).<br />
Mit wenigen Klicks können hier solche Services aktiviert<br />
und in den <strong>Shop</strong> integriert werden. Näheres dazu findet<br />
sich im schon genannten Bereich E-Commerce Services<br />
in der <strong>Shop</strong>-Administration oder auf der Oxid-Homepage.<br />
»Fazit«<br />
Mit der Open-Source-Version des Oxid E-<strong>Shop</strong>s dürfte aufs<br />
Neue Bewegung in den Markt der <strong>Shop</strong>-Systeme kommen.<br />
Gegenüber Systemen wie zum Beispiel osCommerce, XT-<br />
Commerce oder Magento stellt der Oxid E-<strong>Shop</strong> in jedem<br />
Fall eine Alternative dar, die es lohnt, genauer betrachtet<br />
zu werden.Es bleibt abzuwarten,ob und inwiefern es Oxid<br />
gelingt,den neuen Drive einer Open-Source-Community produktiv<br />
aufzunehmen und in die eigene Entwicklung zu integrieren.<br />
Man kann davon ausgehen, dass es im Rahmen<br />
der Community schon sehr bald jede Menge preisgünstiger<br />
oder sogar kostenloser Erweiterungen für dieses <strong>Shop</strong>-<br />
System geben wird. Ein erstes Beispiel ist die Integration<br />
desWysiwyg-EditorsTiny MCE. In Kürze (Stand: Dezember<br />
2008) soll es quasi nach Apple-Vorbild auch einen Oxid-<br />
App-Store geben, in dem nützliche Zusatzmodule thematisch<br />
sortiert angeboten werden.<br />
[mb]<br />
Aktion<br />
50 Euro Startguthaben<br />
Für alle Leser des PHP Journals hat Oxid Esales ein besonderes Geschenk:<br />
Die ersten 500 Oxid-E-<strong>Shop</strong>-User, die sich zu<br />
Oxid E-Fire registrieren, erhalten 50 Euro<br />
Startguthaben für Oxid E-Fire. Die Anmeldung<br />
ist kostenlos und Sie bezahlen nur für<br />
die von Ihnen genutzten Oxid-E-Fire-Services.<br />
Steuern auch Sie einfach und intelligent<br />
Ihre E-Commerce-Aktivitäten.<br />
Oxid E-Fire ist die perfekte Ergänzung zu<br />
Ihrem Oxid E-<strong>Shop</strong>. Die E-Commerce-Intelligence-Plattform<br />
bietet <strong>Shop</strong>betreibern<br />
Zugang zu gebündeltem E-Commerce-Knowhow<br />
und erspart Zeit und Kosten für die<br />
Nutzung relevanter Services entlang der<br />
E-Commerce-Wertschöpfungskette. Die ergänzende<br />
E-Commerce-Plattform Oxid E-Fire<br />
bietet Schnittstellen zu E-Commerce-Partnern<br />
wie Payment-Dienstleistern, Webcontrolling/<br />
Data-Mining, Produktportalen, Preissuchmaschinen<br />
oder Affiliate-Programmen und sorgt<br />
dafür, dass der Onlinehandel nachhaltig zum<br />
Erfolg wird.<br />
Und so funktioniert’s: Registrieren Sie sich<br />
unter folgendem Link: www.oxid-efire.com/<br />
register. Geben Sie in Schritt eins des Registrierungs-Workflows<br />
den Gutscheincode<br />
phpjournalefire01-02/2009_z5x ein.<br />
Die Aktion ist gültig bis zum 28. Februar<br />
2009.<br />
1/2009 PHP Journal 25