Ich habe ja durchaus schon einige Erfahrungen mit Zen Cart, aber manchmal stoße sogar ich an Grenzen. Heute ist mal wieder so ein Fall, der ja durchaus auch bei anderen Modulen auftreten kann. Ich will das hier einmal mit einem Beispiel aufzeigen. Heute habe ich mal einen Demoshop neu installiert, weil ich gesehen habe, dass es das Modul Amazon Pay in einer neuen Version gibt. Bei einer Erstinstallation in einen nackten Shop sollte es ja kein Problem geben, zumindest wenn ich nach der Installationsanleitung gehe:
Wenn ich das nun aber so machen würde, wie es da geschrieben steht, dann würde sich beispielsweise die Datei tpl_shopping_cart_default.php gewaltig verändern:
Hier würde ja - so wie ich es verstehe - die Einstellung für Tablets und Smartphones gelöscht, wenn ich die Datei einfach überschreiben würde. Auch beim nächsten Bild ist es so, dass links (die Originaldatei) etwas anderes steht als in der Vergleichsdatei des Moduls:
Auch im dritten Bild ist dieselbe Situation gegeben, auch hier würden Einstellungen zu Mobilgeräten überschrieben werden:
(Die Grafiken können mit einem Klick in Originalgröße aufgerufen werden)
Nun habe ich es mir zur Gewohnheit gemacht, grundsätzlich, auch bei einer Neuinstallation, alle geänderten Dateien zu vergleichen. Aber hier wäre ich auch bei einem Vergleich überfordert, denn was muss ich überschreiben und was nicht? Das ist ja ein grundsätzliches Problem beim Einbau von Modulen, weil man nicht immer weiß, was von der Originaldatei geändert werden darf und was nicht. Ich habe mal bewusst diese Datei als Beispiel hierfür genommen, weil sie die Probleme aufzeigt, die man hat, wenn man nicht unbedingt ein Kenner von PHP ist.
Nach meinem Verständnis ist die Datei tpl_shopping_cart_default.php im Amazon-Modul vermutlich noch aus einer früheren Version von Zen Cart, denn die eigentliche Änderung beginnt ja erst in Zeile 168 mit dem Eintrag:
Die vorangegangenen Unterschiede scheinen mir wie gesagt aus einer früheren Version der tpl_shopping_cart_default.php zu stammen, weil sie wie gesagt auch keine Einträge für Mobilgeräte enthält. Die tpl_shopping_cart_default.php for Free Gifts ist beispielsweise mit der Originaldatei bis auf die Änderungen für die Freebees identisch. Aber vielleicht ist meine Interpretation ja auch verkehrt, ich will das nicht ausschließen. Aber das Problem würde deshalb trotzdem bestehen bleiben, und wenn schon weitere Module installiert wären, dann müsste ja auch zwangsläufig die tpl_shopping_cart_default.php verglichen werden. Wie also mache ich es nun richtig?
Wenn Sie Zen Cart 1.5.6 gerade frisch installiert haben und noch keinerlei Änderungen an den Dateien vorgenommen haben, können Sie nun alle Dateien/Ordner aus dem Ordner GEAENDERTE DATEIEN in der vorgegebenen Struktur in die Zen Cart Installation hochladen. Dabei werden dann bestehende Dateien überschrieben.
Hier würde ja - so wie ich es verstehe - die Einstellung für Tablets und Smartphones gelöscht, wenn ich die Datei einfach überschreiben würde. Auch beim nächsten Bild ist es so, dass links (die Originaldatei) etwas anderes steht als in der Vergleichsdatei des Moduls:
Auch im dritten Bild ist dieselbe Situation gegeben, auch hier würden Einstellungen zu Mobilgeräten überschrieben werden:
(Die Grafiken können mit einem Klick in Originalgröße aufgerufen werden)
Nun habe ich es mir zur Gewohnheit gemacht, grundsätzlich, auch bei einer Neuinstallation, alle geänderten Dateien zu vergleichen. Aber hier wäre ich auch bei einem Vergleich überfordert, denn was muss ich überschreiben und was nicht? Das ist ja ein grundsätzliches Problem beim Einbau von Modulen, weil man nicht immer weiß, was von der Originaldatei geändert werden darf und was nicht. Ich habe mal bewusst diese Datei als Beispiel hierfür genommen, weil sie die Probleme aufzeigt, die man hat, wenn man nicht unbedingt ein Kenner von PHP ist.
Nach meinem Verständnis ist die Datei tpl_shopping_cart_default.php im Amazon-Modul vermutlich noch aus einer früheren Version von Zen Cart, denn die eigentliche Änderung beginnt ja erst in Zeile 168 mit dem Eintrag:
Code:
<!-- ** BEGIN AMAZON FRITES LOGIN ** --> <br class="clearBoth" /> <?php // the tpl_login_button template only displays LOGIN option if cart contents > 0 and value > 0 and if there are no virtual products if (defined('MODULE_PAYMENT_FRITES_STATUS') && MODULE_PAYMENT_FRITES_STATUS == 'True') { if ($_SESSION['cart']->in_cart_check('products_virtual')) { // } else { include DIR_FS_CATALOG . DIR_WS_MODULES . 'payment/frites/tpl_login_button.php'; } } ?> <!-- ** END AMAZON FRITES LOGIN ** -->
Kommentar