Fügen Sie die Seite „Produkt vergleichen anpassen“ zur Seite „Kundenkonto“ hinzu
-
12-12-2019 - |
Frage
Ich bin neu bei Magento und habe mit diesem Problem zu kämpfen.Ich möchte „Produkt vergleichen anpassen“ zur Seite „Kundenkonto“ hinzufügen, also habe ich meinen Anpassungsblock in erstellt
\template\catalog\product\compare\mycompare.phtml
und in meiner local.xml füge ich hinzu
<action method="addLink" translate="label" module="catalog">
<name>catalog.compare.list</name>
<path>index.php/catalog/product_compare/index/</path>
<label>My Compare</label>
</action>
<catalog_product_compare_index>
<label>Catalog Product Compare List</label>
<!-- Mage_Catalog -->
<update handle="customer_account"/>
<reference name="my.account.wrapper">
<block type="catalog/product_compare_list" name="catalog.compare.list" template="catalog/product/compare/mycompare.phtml"/>
</reference>
</catalog_product_compare_index>
Es ist Arbeit, aber dieser Block wurde zweimal aufgerufen.Und die ursprünglichen Vergleichsprodukte (eines mit neuen Fenstern, wenn darauf geklickt wird) haben auch ihr Layout geändert!Wie kann ich das Problem beheben?
Lösung
Das Problem war, weil ich denselben Pfad mit dem Pop-up-Vergleichsprodukt benutze. generasacodicetagpre.
und dieser Code generasacodicetagpre.
Pop-up-Vergleichen Produktlayout.
Also, was ich hier tue, nur um ein neues Modul zu erstellen.Erstellen Sie IndexController
mit indexAction
,
generasacodicetagpre.
und ändern Sie einen gewünschten Code in local.xml
:
generasacodicetagpre.
Andere Tipps
Da ich nicht sicher bin, was Sie erreichen möchten, werde ich zwei verschiedene Lösungen anbieten:
Lösung 1. Wenn Sie die Duplikate im Popup-Fenster „Produkte vergleichen“ entfernen und Ihre eigene benutzerdefinierte Blockvorlage „Produkte vergleichen“ hinzufügen müssen, müssen Sie Folgendes implementieren local.xml
:
<catalog_product_compare_index>
<update handle="customer_account"/>
<reference name="content">
<action method="unsetChild"><name>catalog.compare.list</name></action>
</reference>
<reference name="my.account.wrapper">
<block type="catalog/product_compare_list" name="catalog.compare.list" template="catalog/product/compare/mycompare.phtml"/>
</reference>
</catalog_product_compare_index>
Lösung 2. Wenn Sie Ihren benutzerdefinierten Vorlagenblock zum Vergleichen von Produkten zur Seite „Kundenkonto-Dashboard“ hinzufügen müssen, müssen Sie Folgendes implementieren local.xml
:
<customer_account_index>
<reference name="my.account.wrapper">
<block type="catalog/product_compare_list" name="catalog.compare.list" template="catalog/product/compare/mycompare.phtml"/>
</reference>
</customer_account_index>