1

現在、メニュー タブに新しいメニュー リンクを追加したいのですが、他のモジュール テンプレートを変更せずに、モジュール内に追加するだけで実行できますか? 私がこのようにしたい理由は、モジュールを無効にするとメニューリンクも消えることを望んでいるためです。

page.xml(他モジュールレイアウトファイル)

<block type="page/html_header" name="header" as="header">
                <block type="page/template_links" name="top.links" as="topLinks"/>
                <block type="page/switch" name="store_language" as="store_language" template="page/switch/languages.phtml"/>
                <block type="core/text_list" name="top.menu" as="topMenu" translate="label">
                    <label>Navigation Bar</label>
                    <block type="page/html_topmenu" name="catalog.topnav" template="page/html/topmenu.phtml"/>
                </block>
                <block type="page/html_wrapper" name="top.container" as="topContainer" translate="label">
                    <label>Page Header</label>
                    <action method="setElementClass"><value>top-container</value></action>
                </block>
            </block>

referral.xml(私のモジュール) ??? 私は何をすべきか? ここに画像の説明を入力

topmenu.phtml

<?php $_menu = $this->getHtml('level-top') ?>
    <?php if($_menu): ?>
    <div class="nav-container">
        <ul id="nav">
            <?php $active = is_numeric(stripos($_SERVER['REQUEST_URI'], 'aboutus')) ? 'active' : ''; ?>
            <li class="level0 nav-2 last level-top <?php echo $active; ?>">
                <a class="level-top" href="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);?>aboutus">
                    <span>About Us</span>
                </a>
            </li>
            <?php echo $_menu ?>
            <?php $active = is_numeric(stripos($_SERVER['REQUEST_URI'], 'redemption/store')) ? 'active' : ''; ?>
            <li class="level0 nav-2 last level-top <?php echo $active; ?>">
                <a class="level-top" href="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);?>redemption/store">
                    <span>Redemption Store</span>
                </a>
            </li>
4

2 に答える 2

0

これは私にはカスタム ナビゲーションのように見えますが、そのままではメイン ナビゲーションに項目を追加する方法はありません (カテゴリ項目はありません)。

デフォルトではカテゴリのみが表示されるため、おそらくテンプレートにハードコードされているように見えます.

多くのモジュールとテーマを扱ってきたので、XML 構成または管理オプションのいずれかを介してリンクを追加する機能が追加されたカスタム テーマであれば、非常に驚​​かれることでしょう。

topmenu.phtml ファイルからいくつかのコードを投稿していただけないでしょうか。そうすれば、最適なアクションをアドバイスできます。

于 2013-03-15T22:32:55.157 に答える
0

このためには、そのクラスで拡張されるカスタム モジュールに Navigation クラスを記述する必要があります。これは、ローカル ナビゲーション クラスでオーバーライドする必要Mage_Catalog_Block_Navigationがある関数 ( ) です。renderCategoriesMenuHtmlしかし、問題は、リアルタイムのユーザーはほとんどが異なるテーマを持ち、クラスを変更するなど、設計の実装で競合する可能性があることです。

于 2013-05-09T13:15:05.240 に答える