Versandkosten-Addon
Manchmal ist es sinnvoll Händlern andere Versandoptionen als Endkunden anzubieten, weil das der JTL-Shop2 im Moment nicht bietet habe ich diese kleine Addon erstellt. Hier die Installationsanleitung:
1. Paket downloaden und Dateien ersetzen
Zu nächst müsst ihr euch folgendes Paket runter laden: Versandarten-Addon
Diesmal ist auch eine Anleitung im Paket enthalten falls es wieder Probleme mit WordPress gibt.
Nachdem ihr das Paket entpackt habt müsst ihr im Ordner admin die Datei versandarten.php ersetzen sowie in admin/templates/tpl_inc die Datei versandarten_neue_Versandart.tpl.
2. SQL
Nun führt ihr folgende SQL-Befehlt aus oder verwendet die Datei dbinsert.sql die dem Paket beiliegt.
1 2 3 4 5 | CREATE TABLE 'tversandartkundengruppe' ( 'kVersandart' INT(10) NOT NULL DEFAULT '0', 'kKundengruppe' INT(10) NOT NULL DEFAULT '0', PRIMARY KEY ('kVersandart','kKundengruppe') ) TYPE=MyISAM; |
3. includes/tools.Global.php
1. Schritt – ca. Zeile 1178
1 2 3 4 5 6 7 8 | function gibMoeglicheVersandarten($lieferland, $plz, $versandklassen) { $moeglicheVersandarten = array(); $minVersand = 10000; $cISO = $lieferland; $versandarten = $GLOBALS["DB"]->executeQuery("select * from tversandart where cLaender like \"%".$cISO."%\" and (cVersandklassen='-1' or (cVersandklassen like \"% ".$versandklassen." %\" or cVersandklassen like \"% ".$versandklassen."\")) order by nSort",2); |
ersetzen durch
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | function gibMoeglicheVersandarten($lieferland, $plz, $versandklassen, $kundengruppe = null) { $moeglicheVersandarten = array(); $minVersand = 10000; $cISO = $lieferland; if(!$kundengruppe) $versandarten = $GLOBALS["DB"]->executeQuery("select * from tversandart where cLaender like \"%".$cISO."%\" and (cVersandklassen='-1' or (cVersandklassen like \"% ".$versandklassen." %\" or cVersandklassen like \"% ".$versandklassen."\")) order by nSort",2); else { $versandarten = $GLOBALS["DB"]->executeQuery(" SELECT tversandart.*, tversandartkundengruppe.kkundengruppe FROM tversandart LEFT JOIN tversandartkundengruppe ON tversandart.kversandart = tversandartkundengruppe.kversandart WHERE tversandart.cLaender LIKE \"%".$cISO."%\" AND ( tversandart.cVersandklassen='-1' OR (tversandart.cVersandklassen LIKE \"% ".$versandklassen." %\" OR tversandart.cVersandklassen LIKE \"% ".$versandklassen."\")) AND ( tversandartkundengruppe.kkundengruppe IS NULL OR tversandartkundengruppe.kkundengruppe = ".$kundengruppe.") ORDER BY nSort",2); } |
4. includes/warenkorb_inc.php
1. Schritt – ca. Zeile 142
1 | GLOBALS['smarty']->assign( 'Versandarten', gibMoeglicheVersandarten( $GLOBALS['DB']->escape( $_POST['land']), $GLOBALS['DB']->escape( $_POST['plz']), gibVersandklassen ($_SESSION['Warenkorb']) )); |
ersetzen durch
1 | $GLOBALS['smarty']->assign( 'Versandarten', gibMoeglicheVersandarten( $GLOBALS['DB']->escape( $_POST['land'] ), $GLOBALS['DB']->escape( $_POST['plz'] ),gibVersandklassen( $_SESSION['Warenkorb'] )), $_SESSION['Kunde']->kKundengruppe ); |
5. bestellvorgang.php
1. Schritt – ca. Zeile 450
1 | $smarty->assign('Versandarten',gibMoeglicheVersandarten($lieferland, $plz, gibVersandklassen($_SESSION['Warenkorb']))); |
ersetzen durch
1 | $smarty->$smarty->assign('Versandarten',gibMoeglicheVersandarten($lieferland, $plz, gibVersandklassen($_SESSION['Warenkorb']), $_SESSION['Kunde']->kKundengruppe)); |
2. Schritt – ca. Zeile 466 Nur nötig mit “Quick-Order”-Addon
1 | $shipping_types = gibMoeglicheVersandarten($lieferland, $plz, gibVersandklassen($_SESSION['Warenkorb'])); |
ersetzen durch
1 | $shipping_types = gibMoeglicheVersandarten($lieferland, $plz, gibVersandklassen($_SESSION['Warenkorb']), $_SESSION['Kunde']->kKundengruppe); |
6. admin/templates/langgerman.conf
1. Schritt – einfügen unter [versandarten] ca. Zeile 66
1 | restrictedToCustomerGroups = 'Erlaubte Kundengruppen' |