Diese Meldung ist normal, wenn versucht wird, einen SQL Installer eines englischen Moduls von zen-cart.com in einer deutschen Zen-Cart Version einzuspielen.
Warum?
Die deutsche Version von zen-cart.at unterscheidet sich von der amerikanischen von zen-cart.com unter anderem dadurch, dass der Adminbereich vollständig multilingual ist.
Um das zu erreichen enthält die deutsche Version eine zusätzliche Tabelle namens configuration_language
Die Tabelle configuration_group enthält in der deutschen Version ein zusätzliches Feld namens language_id.
Das ist in der amerikanischen Version nicht vorhanden.
Daher werden alle SQL Installer amerikanischer Module, die etwas in die Tabelle configuration_group schreiben wollen, in einer deutschen Zen-Cart Version den Fehler
1136 Column count doesn't match value count at row 1
bringen
Die Zeile eines Installers eines englischen Moduls, der die configuration_group betrifft wird immer in etwas so aussehen:
Code:
INSERT INTO `configuration_group` VALUES (NULL, 'Zen Lightbox', 'Configure Zen Lightbox settings', '0', '1');
Die Tabelle configuration_group eines englischen Zen-Cart enthält folgende 5 Felder:
configuration_group_id
configuration_group_title
configuration_group_description
sort_order
visible
Genau diese 5 Felder sollen von diesem Befehl in dieser Reihenfolge befüllt werden.
Die Tabelle configuration_group eines deutschen Zen-Cart enthält ein Feld mehr und hat die 6 folgenden Felder:
configuration_group_id
language_id
configuration_group_title
configuration_group_description
sort_order
visible
Lösung daher für ALLE solchen englischen Installer:
Das dort nicht vorgesehene Feld language_id wird an zweiter Stelle vorgesehen und mit der Ziffer 43 (für deutsch) befüllt.
Also:
Code:
INSERT INTO `configuration_group` VALUES (NULL, '43', 'Zen Lightbox', 'Configure Zen Lightbox settings', '0', '1');
Dadurch lässt sich jedes Modul, das für die englische Version gedacht ist und die configuration_group beschreiben will, problemlos auch in der deutschen Version installieren.
Manche englischen Installer enthalten zusätzlich dezidiert die Namen der Felder und schauen dann so aus:
Code:
INSERT INTO configuration_group (configuration_group_id, configuration_group_title, configuration_group_description, sort_order, visible) VALUES
(NULL, 'Google Analytics Configuration', 'Google Analytics Configuration Settings', '1', '1');
Sollten die Felder so wie in diesem Beispiel explizit angegeben sein, dann wäre die Lösung, die Änderung auf:
Code:
INSERT INTO configuration_group (configuration_group_id, language_id, configuration_group_title, configuration_group_description, sort_order, visible) VALUES
(NULL, '43', 'Google Analytics Configuration', 'Google Analytics Configuration Settings', '1', '1');
Alle Module, die im Downloadbereich von zen-cart.at verfügbar sind und die configuration_group verändern, sind bereits so angepasst.
Alle Module, die man von zen-cart.com verwenden will und die configuration_group verändern, müssen zur Verwendung in der deutschen Version wie beschrieben angepasst werden.
Lesezeichen