Admin:Versandarten

Aus WEB-Shop Software Wiki
Version vom 10. November 2012, 20:45 Uhr von Yogi (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Im WEB-Shop sind bereits diverse Versandarten vorhanden. Viele Versandarten bieten die Möglichkeit diese auf eine "Steuerzone" zu beschränken. Diese Steuerz…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springenZur Suche springen

Im WEB-Shop sind bereits diverse Versandarten vorhanden.

Viele Versandarten bieten die Möglichkeit diese auf eine "Steuerzone" zu beschränken. Diese Steuerzone hat nix mit der deutschen Steuer zu tun, sondern es handelt sich vielmehr um eine Kontrollzone. Diese "Zonen" können im Backend unter "Land/Steuer" -> Steuerzonen angelegt und bearbeitet werden.

Häufig benötigt man mehrere Versandarten, insbesondere wenn man ins In- und Ausland verschickt. Anstatt sich nun auf die "vorhandenen" Versandarten zu beschränken kann man auch eine Versandart "duplizieren" indem man den Code vervielfältigt.

Versandart duplizieren

Eine Versandart besteht immer aus einer Code- und mehreren Spachdateien. Diese befinden sich unter

  • includes/modules/shipping/versandart.php und
  • lang/Sprache/modules/shipping/versandart.php

Bei einer Standardinstallation sind es also zwei Sprachdateien (german / english).

Nehmen wir mal an Du möchtest die "Tabellarischen Versandkosten" sowohl für Deutschland als auch für EU (ohne D) verwenden. Im Backend "Module" -> "Versandkosten" erkennst Du in der Spalte "Modulname" den Dateinamen für die Versandart, in unserem Fall also table.

Nun möchten sagen wir mal die neue Versandart soll "table_eu" heißen - liegt ja Nahe, table war es vorher und "_eu" als Ergänung zur Unterscheidung. Also kopierst Du die obigen Dateien unter dem neuen Namen "table_eu.php":

  • includes/modules/shipping/table_eu.php und
  • lang/german/modules/shipping/table_eu.php
  • lang/english/modules/shipping/table_eu.php

In diesen Dateien werden diverse Konstanten verwendet nun auch noch geändert werden müssen, aber der Reihe nach.

Anpassen der Zahlungsklasse

Öffne zunächst die Datei includes/modules/shipping/table_eu.php und suche dort nach class table - hier muß table durch table_eu ersetzt werden. Jede Klasse hat einen Constructor, der entweder __construct oder so heißt wie die Klasse - suche also nach 'function table' und ersetzte auch dort table durch table_eu. Wenn es keine function table gibt so prüfe ob es eine function _construct gibt, wenn ja muß du hier nix anpassen.

Die Klasse selbst weiß ebenfalls wie sie heißt - und speichert dies in der varibale $this->code. Suche also nach $this->code und weise dieser ebenfalls den neuen wert table_eu zu.

Nun müssen wir noch die Konstanten ändern. In der Klasse wird ganz oft MODULE_SHIPPING_TABLE_ verwendet, wobei dahinter noch diverse namen kommen. Diese müssen auch alle in den neuen Wert MODULE_SHIPPING_TABLE_EU_ geändert werden.

Anpassung der Sprachdateien

In den Sprachdateien wird diversen Konstanten der entsprechende Text zugewiesen, auch diese müssen wie oben beschrieben auf den neuen Modulnamen angepasst werden.

Vor dem Testen sollte man wie immer eine Sicherung anfertigen (Dateien & Datenbank)