1

Magento の左側のナビゲーションからカテゴリを削除したいのですが、メインのナビゲーション top.phtml に残しておきたいです。これまでのところ、これを行う唯一の方法は、local.xml の XML を少し使用することです。

    <reference name="catalog.leftnav">
        <action method="unsetChild"><alias>Item to remove</alias></action>
    </reference>

ただし、設定を解除したいアイテムのエイリアスがわかりません。カテゴリ名は次のとおりです。

米国のオンラインストアから購入するには

& URL は次のとおりです。

オンラインストアから購入する

誰かがこれを手伝うことができれば、それは素晴らしいことです.私はプロットを完全に失いました.

ありがとう

4

2 に答える 2

1

これは非常に古い質問ですが、私のようなものを持っている人には役立ちます。

サイドバーからカテゴリ リストを削除するには、次のように xml ファイルを変更します。

階層化されたナビゲーションから削除:

local.xmlテーマにそのようなファイルがある場合は、ファイルに以下のコードを追加します。

<catalog_category_layered>
     <reference name="catalog.leftnav">           
        <action method="unsetChild">
            <child>category_filter</child>
        </action>
    </reference>
</catalog_category_layered>

存在しないcatalog.xml場合は、ファイルに以下のコードを追加します。local.xml

<block type="catalog/layer_view" name="catalog.leftnav" after="currency" template="catalog/layer/view.phtml">
    <action method="unsetChild">
        <child>category_filter</child>
    </action>       
</block>

カテゴリのデフォルト ページから削除:

local.xmlテーマにそのようなファイルがある場合は、ファイルに以下のコードを追加します。

<reference name="catalog.leftnav" >       
    <action method="unsetChild">
         <child>category_filter</child>
    </action>
</reference>

存在しないcatalog.xml場合は、ファイルに以下のコードを追加します。local.xml

 <block type="catalog/navigation" name="catalog.leftnav" after="currency" template="catalog/navigation/left.phtml">
   <action method="unsetChild">
         <child>category_filter</child>
    </action>
 </block>

カタログ検索ページから削除:

local.xmlテーマにそのようなファイルがある場合は、ファイルに以下のコードを追加します。

<catalogsearch_result_index>
   <reference name="catalog.leftnav">           
        <action method="unsetChild">
            <child>category_filter</child>
        </action>
    </reference>
</catalogsearch_result_index>

存在しないcatalogsearch.xml場合は、ファイルに以下のコードを追加します。local.xml

<block type="catalogsearch/layer" name="catalogsearch.leftnav" after="currency" template="catalog/layer/view.phtml">
      <action method="unsetChild">
            <child>category_filter</child>
        </action>
</block>

注:管理者でキャッシュを有効にしている場合は、キャッシュをクリアしてください。

于 2016-09-01T09:32:47.357 に答える
0

この場合、XMLを介して設定を解除しても、ブロック全体、つまり左端のナビゲーションのみが無効になります。

左側のナビゲーションではなく、上部のナビゲーションで1つのカテゴリを無効にする方法は(箱から出して)ありません。

あなたが取ることができるいくつかのアプローチがありますが、私が推測している必要なものにはやり過ぎになるものもありますが、単純な汚いアプローチは次のようになります:

Mage_Catalog_Block_Navigationをローカルのnamespance(app / code / local / Mage / Catalog / Block / Navigation.php)にいつでもコピーできます。

次に、これ(Navigationleft.php)の名前を変更し、必要に応じて変更を加えることができます。次に、XMLステートメントを変更して、この新しいブロックを左側のナビゲーションに使用します。

<reference name="left">
        <block type="catalog/navigationleft" 
               name="catalog.leftnav" 
               after="currency" 
               template="catalog/navigation/left.phtml"
         />
</reference>

カタログエンティティに新しい属性をいつでも追加し、ナビゲーションを変更して、アイテムを表示するときにis_activeと一緒にこれ(show_on_left_nav)を使用することができますが、これはおそらく少しやり過ぎです:)

于 2012-10-30T13:58:25.747 に答える