Express-Versand
0 Kommentare| ab Version: | 3.0.4 |
Inhaltsverzeichnis
Beschreibung
HEUTE BESTELLT - MORGEN GELIEFERT
Mit diesem Tutorial und dem Premium-Versandkosten-Modul kann Ihren Kunden, zusätzlich zu den Standard-Versandarten, auch ein Express-Versand angeboten werden.
Somit wird dem Besucher bereits auf der Detailseite exakt angezeigt, in welcher Zeitspanne noch eine Bestellung aufgeben werden muss, um diese an dem genannten Zeitpunkt zu erhalten.
Auch im Warenkorb werden Informationen, wie z.B. Liefertermin angezeigt.
Installation
|
Legen Sie von den zu ändernden Dateien und der Datenbank im Vorfeld eine Sicherung an! |
Template-Änderungen
Am Anfang der Datei "templates/0/de/html/articles/article_details_data.tpl" diesen Smarty-Code hinzufügen:
{* Express-Versand *} {if $sArticle.sExpressDispatch} {eval var=$sConfig.sSnippets.sArticlesExpressDispatch} {/if} {* /Express-Versand *}
In der Datei "templates/0/de/html/basket/basket_middle.tpl" nach diesem Smarty-Code suchen:
{$selectedDispatch.description}
und ersetzen durch:
{eval var=$selectedDispatch.description}
Datenbank-Änderungen
UPDATE `s_core_config` SET `value` = CONCAT(`value`,', DATE_ADD(CURDATE(), INTERVAL IF(WEEKDAY(CURDATE())=5,2,1) DAY) as deliverydate') WHERE `value` NOT LIKE '%deliverydate%' AND `name` = 'sPREMIUMSHIPPIUNGASKETSELECT'; SET @parent = (SELECT `id` FROM `s_core_config_groups` WHERE `name`='Premium-Versandkosten'); INSERT INTO `s_core_config` (`group`, `name`, `value`, `description`, `required`, `warning`, `detailtext`, `multilanguage`) VALUES (@parent, 'sEXPRESSDISPATCHSQL', 'd.name LIKE \'%express%\'', 'Express-Versandart SQL-Abfrage', 1, 0, '', 0); INSERT INTO `s_core_config` (`group`, `name`, `value`, `description`, `required`, `warning`, `detailtext`, `multilanguage`) VALUES (@parent, 'sEXPRESSWEEKDAYS', 'Montag;Dienstag;Mittwoch;Donnerstag;Freitag;Samstag;Sonntag', 'Wochentage', 1, 0, '', 1); INSERT INTO `s_core_config` (`group`, `name`, `value`, `description`, `required`, `warning`, `detailtext`, `multilanguage`) VALUES (@parent, 'sEXPRESSMONTHS', 'Januar;Februar;März;April;Mai;Juni;Juli;August;September;Oktober;November;Dezember', 'Monate', 1, 0, '', 1); INSERT INTO `s_core_hookpoints` (`name`, `module`, `position`, `code`, `modified`) VALUES ('sCore.php_sCustomRenderer_BeforeEnd', 'Express-Versand', '', '$sRender[''variables''][''sWeekdays''] = explode('';'', '';''.$this->sSYSTEM->sCONFIG[''sEXPRESSWEEKDAYS'']);\r\n$sRender[''variables''][''sMonths''] = explode('';'', '';''.$this->sSYSTEM->sCONFIG[''sEXPRESSMONTHS'']);', '0000-00-00 00:00:00'); INSERT INTO `s_core_hookpoints` (`name`, `module`, `position`, `code`, `modified`) VALUES ('sArticles.php_sGetArticleById_BeforeReturn', 'Express-Versand', '', '$getArticle = $this->sSYSTEM->sMODULES[''sAdmin'']->sGetExpressDispatch($getArticle);', '0000-00-00 00:00:00'); SET @parent = (SELECT `groupID` FROM `s_core_config_text_groups` WHERE `description`='articles'); INSERT INTO `s_core_config_text` (`group`, `name`, `value`, `description`) VALUES (@parent, 'sArticlesExpressDispatch', '{assign var="sDeliveryWeekday" value=$sArticle.sExpressDispatch.deliverydate|date_format:"%u"}\r\n {assign var="sDeliveryMonth" value=$sArticle.sExpressDispatch.deliverydate|date_format:"%m"|intval}\r\n {assign var="sDeliveryDay" value=$sArticle.sExpressDispatch.deliverydate|date_format:"%d"}\r\n {assign var="sBindHours" value=$sArticle.sExpressDispatch.bind_time|date_format:"%H"|intval}\r\n {assign var="sBindMinutes" value=$sArticle.sExpressDispatch.bind_time|date_format:"%M"|intval}\r\n <p>\r\n <strong>Lieferung bis {$sWeekdays[$sDeliveryWeekday]}, den {$sDeliveryDay}. {$sMonths[$sDeliveryMonth]}:</strong>\r\n \r\n Bestellen Sie in den nächsten\r\n <span class="deliverable1">{if $sBindHours} {$sBindHours} Stunden und {/if} {$sBindMinutes} Minuten </span>\r\n und wählen Sie <strong>{$sArticle.sExpressDispatch.name}</strong> an der Kasse\r\n \r\n \r\n </p>', 'Express-Versand'); UPDATE `s_core_factory` SET `inheritname` = 'myAdmin', `inheritfile` = 'myAdmin.php' WHERE `basename` = 'sAdmin';
Modul-Änderungen
Zum Schluss müssen Sie noch die myAdmin.php anlegen bzw. anpassen.
Als erstes müssen Sie die Datei Datei "myAdmin.php" herunterladen und entpacken. (Diesen Download finden Sie unten auf dieser Seite!)
Diese Datei muss auf dem Server in folgenden Ordner kopiert werden: "/engine/core/class/inherit/"
Wenn die Datei schon existiert, müssen Sie die Methoden aus den Dateien zusammenfügen.
Normalerweise genügt es, wenn Sie den Abschnitt zwischen
/* Express-Versand Start */
und
/* Express-Versand Ende */
aus der heruntergeladenen Datei oberhalb der letzten beiden Zeilen einfügen:
// hier einfügen } // vorletzte Zeile ?> // letzte Zeile
Einstellungen
Express-Versandart SQL-Abfrage
Mit dieser Abfrage wird bestimmt welche Versandart zur Berechung der Lieferzeit auf Artikel-Detailseite genommen wird.
Diese Einstellungen könnnen Sie den "Premium-Versandkosten"-Einstellungen unter den Grundeinstellungen vornehmen.
Defaultwert (Name enthält den Wert "express"):
d.name LIKE '%express%'
Versandart-Beschreibung
Der Text auf der Warenkorbseite ist die Beschreibung der Versandart.
Damit dort das Lieferdatum ausgegeben werden kann, können Sie in der Versandart-Beschreibung folgendes Template nutzen:
{assign var="sDeliveryWeekday" value=$selectedDispatch.deliverydate|date_format:"%u"} {assign var="sDeliveryMonth" value=$selectedDispatch.deliverydate|date_format:"%m"|intval} {assign var="sDeliveryDay" value=$selectedDispatch.deliverydate|date_format:"%d"} Lieferung am {$sWeekdays[$sDeliveryWeekday]}, den {$sDeliveryDay}. {$sMonths[$sDeliveryMonth]}
Weitere Einstellungen
Damit auf der Artikeldetailseite die verbleibende Zeit in Stunden/Minuten, bis der Express-Versand nicht mehr möglich ist, angezeigt wird, müssen Sie bei der Express-Versandart die Einstellung "Uhrzeit bis" vornehmen.
Den Text auf der Artikeldetailseite können Sie in den Textbausteinen anpassen. Der Textbaustein hat den Namen "sArticlesExpressDispatch" und kann auch unter diesem Namen in der Suche gefunden werden.
Das Lieferdatum wird über eine SQL-Abfrage bestimmt. Diese SQL-Abfrage könnnen Sie den "Premium-Versandkosten"-Einstellungen unter den Grundeinstellungen anpassen.
Die Einstellung lautet "Erweitere SQL-Abfrage".
Artikel bewerten
Kommentare:
Artikel kommentieren
Weitere interessante Artikel:
Bestell-Nr.: SW1296
Lieferzeit ca. 5 Tage
Preise inkl. gesetzlicher
MwSt. zzgl. Versandkosten*
Preise inkl. gesetzlicher
MwSt. + Versandkosten*

