У меня есть одна установка Magento, работающая на двух разных сайтах.Один продает электронные книги, а другой нет, поэтому бизнес-команда хотела бы, чтобы ссылка «Мои загрузки» была удалена из блока навигации клиента в области «Моя учетная запись» приложения.
Я вижу ссылку, определенную вdesign / frontend / base / layout / downloadable.xml, но не вижу ни одного определенного способа, который позволил бы мне отключить ссылку только на одном из веб-сайтов.Очевидно, я мог бы переопределить этот XML, чтобы отключить его глобально, но мне нужно, чтобы изменение было ограничено в области действия.
Как определить переопределения макета на одном веб-сайте или хранить в многосайтовой установке Magento?
Основываясь на ответах ниже, я сделал следующее:
Создал app / local / Mage / Customer / Block / Account / Navigation.php и добавил метод removeLink (), которого нет в ядре.code.
Если я внесу следующее изменение в local.xml, ссылка на скачивание будет удалена:
<?xml version="1.0" encoding="UTF-8"?>
<layout>
<default>
<remove name="catalog.compare.sidebar"/>
</default>
<customer_account>
<reference name="customer_account_navigation">
<action method="removeLink" translate="label" module="downloadable"> <name>downloadable_products</name></action>
</reference>
</customer_account>
</layout>
Но если попытаться настроить таргетинг на конкретный магазин, это не так.Например,
<?xml version="1.0" encoding="UTF-8"?>
<layout>
<default>
<remove name="catalog.compare.sidebar"/>
</default>
<STORE_mm>
<customer_account>
<reference name="customer_account_navigation">
<action method="removeLink" translate="label" module="downloadable"> <name>downloadable_products</name></action>
</reference>
</customer_account>
</STORE_mm>
</layout>