Übersetzt von sharkbait / @kunane
MODx Warenkorb und Bestellverwaltungs-Modul
Das Snippet bietet zwei verschiedene Warenkorb Typen zur Auswahl (einfach or erweitert).
Die Daten für ausgewählten Artikel werden in einem Cookie gespeichert.
Eine Nachricht mit den Bestellinformationen kann per E-Mail gesendet, sowie an das Shopkeeper Modul
geschickt werden (empfohlen).
Es besteht die Möglichkeit die Artikel mit Parametern zu erweitern. Der Käufer kann diese dann während des
Bestellvorganges auswählen (Größen, Farben etc.).
Das eForm Snippet wird zur Erstellung des Bestellformulares benötigt.
Um Widgets zu erstellen (Drop-Down Listen, Radio Buttons, Checkboxen), wird das Snippet "SHKwidget" (für die Verwendung auf der Artikelseite selber), sowie ein Ditto Extender (bei Artikeln die mit Ditto aufgelistet werden). Weiteres dazu unter de_doc_SHKwidget-04.html und de_doc_ditto_extender-03.html
Ersetze alle Dateien und den Code aus (einschließlich der Chunks)
Parameter | Beschreibung und Werte | Standardwerte | Anmerkung |
---|---|---|---|
&lang | Sprache | `ru` | |
&style | Warenkorb Stylesheet | `default` (assets/snippets/shopkeeper/style/default/) |
&style=`0` - wenn kein separates Stylesheet für den Warenkorb verwendet werden soll |
&cartType |
Art des Warenkorbes `full` - erweitert, `small` - einfach, `empty` - leert den Warenkorb ohne irgend etwas anzuzeigen |
`full` | |
¤cy | Währung | `руб.` (für Rubel) | |
&orderFormPage | ID der Seite, die das Bestellformular enthält | `1` | Pflichtangabe |
&gotoid | ID der Seite, die nach Absenden des Formulares aufgerufen wird | `1` | Pflichtangabe. Notwendig damit der Warenkorb nach Absenden des Formulares wieder geleert wird. |
&noJQuery=`1` | wenn jQuery schon auf der Seite verwendet wird | `0` | |
&noConflict=`1` | wenn eine andere Javascript Bibliothek (nicht jQuery) auf der Seite verwendet wird | `0` | |
&noCounter | zeige (`0`) oder blende den Artikelzähler aus (`1`), wenn Artikel zum Warenkorb hinzugefügt werden. | `0` | |
&clStuffCont | CSS Klasse des Produkt Informations-Kontainers | `shk-stuff` | Beispiel Chunk: chunk_shopStuff.txt |
&debug=`1` | Started den Debugger für Javascript Funktionen (Informationsdarstellung) | `0` | |
&cartTpl | Warenkorb Template Chunk | `shopCart` | Der Chunk enthält drei Templates: Ein Template für den leeren Warenkorb und jeweils eines für den einfachen, sowie den erweiterten Warenkorb. |
&cartRowTpl | Template Chunk für eine Produktzeile im erweiterten Warenkorb | - | |
&cartHelperTpl | "Helfer" Template Chunk - Block Element zur Bestätigung von Aktionen | - | |
&flyToCart | die Art und Weise wie der Artikel zum Warenkorb hinzugefügt wird: `helper` - ein Zähler erscheint der die Menge der Artikel anzeigt und sich anschließend in den Warenkorb bewegt, `image` - ein Bild des Artikels bewegt sich in den Warenkorb (momentan noch nicht integriert - eventuell doch :) ), `nofly` - nichts bewegt sich in den Warenkorb; |
`helper` | wenn &flyToCart=`image` verwendet wird, sollte das <img> tag die CSS-Klasse "shk-image" haben |
&noLoader=`1` | den "Preloader" nicht anzeigen | `0` | |
&changePrice=`1` | wenn der Preis Parameter geändert wird, ändert sich der Artikelpreis, der Wert der Änderung wird nicht angezeigt. (?) | `0` | |
&counterField=`1` | fügt einen Zeiger für mehr/weniger zu allen <input name="shk-count"> (Artikelmenge) Feldern hinzu | `0` |
[!Shopkeeper? &orderFormPage=`10` &gotoid=`11`!]
[!Shopkeeper? &cartType=`small` &orderFormPage=`10` &gotoid=`11` &changePrice=`1` &counterField=`1` &flyToCart=`nofly`!]
Das Bestellformular wird mit dem eForm Snippet aufgebaut. Folgende Parameter müssen in dem Snippet Aufruf angegeben werden:
&gotoid - ID des Dokumentes welches nach Senden des Bestellformulares aufgerufen werden soll (notwendig zum leeren des Warenkorbes);
&eFormOnBeforeMailSent=`populateOrderData` - Funktion um die Details der ausgewählten Artikel einzufügen
Um Bestellungen zum Shopkeeper Modul zu schicken, muss der Parameter &eFormOnMailSent=`sendOrderToManager` ebenfalls im eForm Aufruf enthalten sein.
[!eForm? &formid=`shopOrderForm` &tpl=`shopOrderForm` &report=`shopOrderReport` &vericode=`1` &ccsender=`1` &gotoid=`11` &subject=`Bestellung` &eFormOnBeforeMailSent=`populateOrderData` &eFormOnMailSent=`sendOrderToManager`!]
Alle Beispiele befinden sich im shopkeeper/install/ Ordner
Um den Warenkorb an verschiedenen Stellen des Templates anzuzeigen, kann man entweder das PHx Plugin verwenden, oder verschiedene Templates anzulegen
Ditto wird normalerweise für die Darstellung der Artikel verwendet.
Benutz zusätzliche TV Parameter (z.B. [*price*]) um Preise anzuzeigen.
Es besteht ein geringes Risiko dadurch, daß das Snippet Datenbank Funktionen ausführt (schreiben und lesen). Der Author hat versucht die weitverbreitesten Methoden des "Einbrechens" (in das System) auszuschließen, aber theoretisch ist alles möglich... Benutzung des Codes auf eigenes Risiko. Der Author übernimmt keinerlei Haftung für mögliche Folgen.