Как добавить шаблон только для страниц учетной записи?


У меня есть шаблон, который должен быть только на страницах учетной записи и страницах оформления заказа.

У меня есть меню в local.xml это отображается, когда клиент входит в систему, но я также хочу показывать это только на определенных страницах.

Author: Teja Bhagavan Kollepara, 2013-09-13

1 answers

Вы можете настроить таргетинг на определенные страницы, используя их соответствующие дескрипторы.

Добавьте следующее в свой local.xml

<checkout_cart_index>
    <reference name="header">
        <block type="menu/block" name="custom_menu" template="custommenu/template.phtml"/>
    </reference>
</checkout_cart_index>

<checkout_onepage_index>
    <reference name="header">
        <block type="menu/block" name="custom_menu" template="custommenu/template.phtml"/>
    </reference>
</checkout_onepage_index>

<customer_account>
    <reference name="header">
        <block type="menu/block" name="custom_menu" template="custommenu/template.phtml"/>
    </reference>
</customer_account>

<customer_logged_out>
    <remove name="custom_menu"/>
</customer_logged_out>

Предполагая, что меню будет добавлено в header вашего интернет-магазина, это добавит его в раздел "Корзина", "Оформление заказа" и "Учетная запись клиента" ТОЛЬКО для зарегистрированных пользователей.

Я использовал дескриптор customer_logged_out для удаления меню, когда пользователь не вошел в систему. Примерно в том же духе, что вы описали в своем вопросе.

Теперь вы можете вызвать меню, добавив следующий код в вашем header.phtml, где вы хотите отобразить меню.

<?php echo $this->getChildHtml('custom_menu');?>
 3
Author: Sander Mangel, 2013-09-13 14:01:29