Question

Dans checkout.xml je vois

<action method="setCartTemplate"><value>checkout/cart.phtml</value></action>
<action method="setEmptyTemplate"><value>checkout/cart/noItems.phtml</value></action>
<action method="chooseTemplate"/>

Je suis en train d'avoir un bloc se montre que quand il y a des articles dans le panier mais pas lorsque son vide. Comment puis-je y parvenir?

Était-ce utile?

La solution

Annonce de votre bloc normalement, et envelopper votre code html d'affichage dans un conditionnel, la vérification des articles de panier.

Cela fonctionne,

Mage::helper('checkout/cart')->getCart()->getItemsCount();

sans avoir à réécrire tous les blocs de base, ou même créer votre propre bloc.

Votre bloc phtml pourrait alors être juste bloc de modèle de base, à moins que vous avez besoin de plus logique de panier dans votre modèle, vous devez étendre le panier de base bloc abstrait de votre propre bloc (Mage_Checkout_Block_Cart_Abstract) qui vous donnera accès à tout le panier de base méthodes.

Ensuite, il suffit d'ajouter votre bloc au xml, et il ne la sortie de ce code s'il y a des éléments.

En fonction de ce que l'affichage est prévu, vous pouvez ajouter votre bloc comme un enfant de ces listes de blocs de base, alors vous n'avez pas besoin de changer le fichier cart.phtml de base pour faire écho à votre bloc

<block type="core/text_list" name="checkout.cart.top_methods" as="top_methods" translate="label">
                    [ add your block here ]
                </block>

<block type="core/text_list" name="checkout.cart.methods" as="methods" translate="label">
                   [ add your block here ]
                </block>
Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top