1. Überblick
Mittels dieses Modules für den OXID eShop sind Sie in der Lage, ganz unterschiedliche, konfigurierbare / parametrisierbare Artikel in einem Shop anzubieten. Ihnen stehen pro Artikel jeweils bis zu 5 Parameter zur Verfügung, wovon die Parameter 1 bis 3 Geometrien, oftmals also Längen, Flächen oder Volumen, die Parameter 4 und 5, unabhängig von diesen, anzahlmäßig zu erfassenden Größen vorbehalten sind. Die Preisbildung, welche für den Kunden transparent bereits während der Eingabe dargestellt wird, erfolgt mittels von Ihnen festzulegender Faktoren. Umfangreiche Plausibilitätsprüfungen beim Festlegen der Parameter für die Artikel (oder auch deren Varianten), sollen helfen Fehleingaben zu vermeiden. Selbstverständlich werden die getätigten Eingaben Ihrer Kunden, wie auch die daraus ermittelten Preise, durch den gesamten Bestellvorgang mitgeführt, erscheinen sowohl in der Bestelleingangsbestätigungs-E-Mail, wie auch in Ihrer Bestellübersicht, der Packliste und natürlich der PDF-Rechnung/-Lieferschein.
Wie alle unsere Module, wurde auch dieses streng nach den Richtlinien des OXID-Modulkonzepts entwickelt. Das bedeutet, dass am core des OXID eShop keinerlei Veränderungen vorgenommen wurden, womit die Updatefähigkeit Ihres Shops gesichert sein sollte. Anpassungen sind lediglich am Template des OXID eShop's notwendig, sofern nicht noch das Oxid-Standard-Template verwendet wird. Auch dieses Modul ist mehrsprachig konzipiert (Sprachdateien für Deutsch & Englisch werden bereits mitgeliefert).
Testen können Sie dieses OXID Modul unter Oxid-Demo-konfigurierbare Artikel. Wollen Sie auch die Funktionalitäten im Admin-Bereich testen, melden Sie sich dazu im Backend an (User:admin / PW:admin) und Wechseln zu den Menüpunkten Artikel verwalten → Artikel → zus. Parameter bzw. Bestellungen verwalten → Bestellungen .
2. Installation
2.1 Vorbereitung
Bei einem produktiven Shop sollten Sie vor relevanten Änderungen, wie auch der Implementierung dieses Modules, immer eine Sicherung des Filesystems und der Datenbank anfertigen, um jederzeit auf den Stand vor Änderung zugreifen zu können. Benutzen Sie zur DB-Sicherung das Tool Ihrer Wahl. Gebräuchlich und bei vielen Providern schon vorinstalliert ist z.B. PhpMyAdmin ©, hat allerdings den Nachteil große Backup's nicht rücksichern zu können. Alternativen existieren z.B. in Form von MySQLDumper © oder auch BigDump.
2.2 Erweiterung der Shop-Datenbank
Dieses relativ komplexe Modul setzt die Erweiterung der OXID-Datenbank voraus. Im Verzeichnis sql Ihres Installationspaketes befindet sich die Datei ox_art_param.sql, welche Sie bitte im Shop-Backend unter Service → Tools → SQL-Datei importieren einlesen. Alternativ können Sie das Script auch mittels z.B. PhpMyAdmin © ausführen. Achten Sie darauf, dass der Import fehlerfrei erfolgt. Ohne die zusätzlichen Felder wird das OXID-Modul nicht funktionieren.
2.3 Übertragen der Dateien
Im Verzeichnis copy_this des Installationspaketes Ihres OXID-Modules befinden sich alle ins Filesystem des OXID Shopsystems zu übertragenden Dateien. Die Verzeichnisstruktur entspricht der des OXID eShop, so dass alle Dateien unterhalb von copy_this mit dem FTP-Programm Ihrer Wahl kopiert werden sollten. Sollten Sie das Sichern des bestehenden Filesystems, wie unter Punkt 2.1 Vorbereitung beschrieben, nicht so ernst genommen haben, hier nochmal eine Liste der (Template-)Dateien, welche überschrieben werden und daher als Mindestforderung vorher von Ihnen gesichert werden sollten:
- out/basic/tpl/basket.tpl
- out/basic/tpl/order.tpl
- out/basic/tpl/email_order_cust_html.tpl
- out/basic/tpl/email_order_cust_plain.tpl
- out/basic/tpl/email_order_owner_html.tpl
- out/basic/tpl/email_order_owner_plain.tpl
- out/basic/tpl/inc/product.tpl
- out/admin/tpl/order_article.tpl
- out/admin/tpl/order_overview.tpl
- out/admin/tpl/order_package.tpl
- modules/invoicepdf/myorder.php
Sollte sich Ihr Template für's Frontend nicht, wie im Standard, in out/basic/... sondern in einem anderen Verzeichnis befinden, kopieren Sie diese Dateien in dieses andere Template-Verzeichnis. Das aktuelle Verzeichnis für das verwendete Template ist mittels des Parameters $this->sTheme in Ihrer Konfigurationsdatei config.inc.php spezifiziert.
2.4 Anpassen des vorhanden Template
Sofern das Template für das Frontend Ihres OXID eShop bereits aufwendig modifiziert wurde, empfiehlt es sich die Änderungen für das Modul konfigurierbare Produkte in die bestehenden Template-Dateien einzupflegen.
folgende Dateien sind in diesem Fall zu erweitern:
- out/<Ihr Templateverzeichnis>/tpl/basket.tpl
- out/<Ihr Templateverzeichnis>/tpl/order.tpl
- out/<Ihr Templateverzeichnis>/tpl/inc/product.tpl
- out/<Ihr Templateverzeichnis>/tpl/details.tpl
In den ersten drei aufgeführten Templates sind lediglich minimale Erweiterungen einzupflegen, das Template details.tpl nimmt jedoch - nicht nur vom Umfang her - eine gewisse Sonderstellung ein.
Das Template details.tpl wird eigentlich gar nicht modifiziert, sondern nur im Falle von konfigurierbaren Produkten wird eine modifizierte Kopie davon namens details_param.tpl aufgerufen. Erstellen Sie also eine Kopie Ihrer bereits modifizierten details.tpl, benennen Sie sie details_param.tpl und pflegen Sie die notwendigen Änderungen dort ein.
Alle Änderungen und Einfügungen in den Template-Dateien, welche das Modul konfigurierbare Produkte erfordert, sind mit [{* Beginn EkomIT *}] bzw. [{* Ende EkomIT *}] gekennzeichnet, so dass Sie die Änderungen leicht nachvollziehen können.
2.5 Registrierung der Modul - Komponenten
Im Backend Ihres Oxid-Systemes sind nun noch die Module bekanntzumachen.
Registrieren Sie also unter Grundeinstellungen → System → Module die folgenden Komponenten:
- oxorder => invoicepdf/myorder&art_param/art_param_oxorder
- oxadmindetails => art_param/article_param
- details => art_param/art_param
- oxcmp_basket => art_param/art_param_oxcmp_basket
- oxbasket => art_param/art_param_oxbasket
- oxbasketitem => art_param/art_param_oxbasketitem
- oxarticle => art_param/art_param_oxarticle
- oxorderarticle => art_param/art_param_oxorderarticle
3. ein Beispiel für konfigurierbare Produkte
Anhand eines Beispiels, welches Sie weitestgehend auch im Test-Shop wiederfinden, soll nun die Arbeitsweise mit dem Modul konfigurierbare Produkte bzw. konfigurierbare Artikel veranschaulicht werden. Analoge Beispiele wären individuelle Möbel, Fenster, Türen, Gardinen, Rollos, als Meterware vertriebene Produkte uvm.
Eine Infrarotkabine soll innerhalb zu bestimmender Grenzen individuell für und aktiv vom Kunden parametrisierbar sein. 
Die ersten 3 Parameter stellen die geometrischen Größen Breite, Tiefe und Höhe dar. Als Einheit wurde cm gewählt, womit die Schrittweite für die Größenangaben mit 1 cm feststeht. Über einen 4. Parameter soll die Anzahl der Strahler angegeben werden können.
3.1 Administration der Artikel im OXID Backend
Melden Sie sich im Administrationsbereich Ihres eShop an, wechseln Sie zu Artikel verwalten → Artikel und wählen Sie einen mit Parametern zu versehenden Artikel aus. Sie befinden sich wie gewohnt im Screen des Reiters Stamm.

Um in die Eingabemaske für die Konfiguration der Parameter zu kommen, wechseln Sie bitte zum Reiter zus. Parameter am rechten Ende der Navigation. Sollten Sie einen Artikel mit Varianten bearbeiten, beachten Sie bitte, dass die Parameter auch für die Variante(n) gesetzt werden, dort wo Sie es wünschen.

Sie sehen jetzt also die Maske zum Setzen der Parameter für die einzelnen Artikel vor sich. Wie schon erwähnt, stehen Ihnen je Artikel / Variante bis zu 3 Konfigurationsparameter für Geometrien sowie - davon unabhängig - 2 weitere Parameter für anzahlmäßig zur erfassende Größen zur Verfügung.
Während Ihrer Eingaben werden Plausibilitätsprüfungen durchgeführt, es empfiehlt sich deshalb folgende Vorgehensweise:
... Fortsetzung in Kürze
Interesse? - Hier können Sie das Modul auch für Ihren Oxid Shop erwerben.




