Удалить блок со страниц аккаунта - PullRequest
1 голос
/ 16 октября 2011

На моем сайте применяется навигационная панель со следующим кодом:

<!-- catalog.xml -->
<default>
    <reference name="left">
        <block type="catalog/navigation" name="catalog.leftnav" template="catalog/navigation/left.phtml"/>
    </reference>
</default>

Но я не хочу, чтобы он появлялся на страницах аккаунта. Я попробовал следующее, но это не работает.

<!-- customer.xml -->
<default>
    <reference name="left">
        <action method="unsetChild"><name>catalog.leftnav</name></action>
    </reference>
</default>

Что я делаю не так?

Ответы [ 2 ]

1 голос
/ 16 октября 2011

Куприт с подобными вещами обычно является порядком применения обновлений.Ваше обновление в дескрипторе по умолчанию, указанном в customer.xml, вероятно, применяется до обновления в дескрипторе по умолчанию, указанном в catalog.xml.Поэтому сначала вызывается unsetChid, а затем блок добавляется в catalog.xml.

Еще одна причина поместить все ваши обновления в local.xml (обновления в local.xml всегда загружаются последними, что означает (в пределах одного дескриптора), обновления в local.xml будут выполняться последними)

0 голосов
/ 17 октября 2011

Примените <remove name="catalog.leftnav"/> в файле customer.xml.that, чтобы удалить блок.

<!-- customer.xml -->
<default>
    <reference name="left">
             <remove name="catalog.leftnav"/>
     </reference>
</default>

Редактировать: -

Хотите удалить его только со страниц аккаунта для этого нужно удалить его из <customer_account>

 <customer_account translate="label">
         <reference name="left">
                 <remove name="catalog.leftnav"/>
         </reference>
  </customer_account>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...