3

階層化されたナビゲーションから 1 つのカテゴリだけを非表示にしたいと考えています。「ナビゲーションに表示」を「いいえ」に設定していますが、それでも検索結果ページに表示されます。これを隠す方法はありますか?

4

1 に答える 1

1

レイヤード ナビゲーションから 1 つのカテゴリを除外するには、次の手順に従ってください。これは、どのタイプのカテゴリ リストでも実行できることに注意してください。

  1. /app/design/frontend/default/YOURTHEMENAME/template/catalog/navigation/left.phtmlを開きます。存在しない場合は、ベース フォルダーからコピーします。
  2. コードを見つけます:

    <dl id="narrow-by-list2">
        <dt><?php echo $this->__('Category') ?></dt>
        <dd>
            <ol>
            <?php foreach ($_categories as $_category): ?>
    
                <?php if($_category->getIsActive()): ?>
                <li>
                    <a href="<?php echo $this->getCategoryUrl($_category) ?>"<?php if ($this->isCategoryActive($_category)): ?> class="current"<?php endif; ?>><?php echo $this->htmlEscape($_category->getName()) ?></a> (<?php echo $_category->getProductCount() ?>)
                </li>
               <?php endif; ?> 
    
            <?php endforeach ?>
            </ol>
        </dd>
    </dl>
    
  3. 次の if ステートメントを foreach ループのすぐ内側に追加します (閉じるのを忘れないでください)。
    <?php if ($_category->getId() != 22): ?>

  4. 新しいコードは次のようになります。

    <dl id="narrow-by-list2">
        <dt><?php echo $this->__('Category') ?></dt>
        <dd>
            <ol>
            <?php foreach ($_categories as $_category): ?>
             <?php if ($_category->getId() != 22): ?> <!-- If statement here, replace category ID -->
                <?php if($_category->getIsActive()): ?>
                <li>
                    <a href="<?php echo $this->getCategoryUrl($_category) ?>"<?php if ($this->isCategoryActive($_category)): ?> class="current"<?php endif; ?>><?php echo $this->htmlEscape($_category->getName()) ?></a> (<?php echo $_category->getProductCount() ?>)
                </li>
               <?php endif; ?> 
              <?php endif; ?> <!-- End new If statement here -->
            <?php endforeach ?>
            </ol>
        </dd>
    </dl>
    
  5. カテゴリ IDを、除外するカテゴリのID に置き換えます。

  6. カテゴリの ID を確認するには、Magento 管理パネルとカテゴリに移動します。左上のカテゴリをクリックして編集すると、数値 ID が表示されます。

于 2013-01-01T03:00:30.440 に答える