5

在我的 Magento 安装中,我有一个从“类别”中的产品类别生成的下拉菜单。它使用代码: <?php echo $this->getChildHtml('topMenu') ?>来显示菜单。

但是,每隔一段时间,我想在菜单中添加一个静态 HTML 链接(带有超链接的列表项)。

我如何实现这一目标?

非常感谢您的任何指点

4

6 回答 6

8

在当前版本的 Magento 中,您可以通过创建一个新类别然后将该类别重定向到您想要的任何 URL(CMS 页面、产品页面、异地等)来做到这一点。

  1. 创建一个新的子类别。将此命名为您希望它在菜单中显示的方式。确保它有一个唯一的 URL 键,它是活动的,并且它是“在导航菜单中”。您可以通过拖放更改它在类别菜单中的位置来更改它的显示位置,方法是拖放到您希望它显示的位置。
  2. 进入 URL 重写管理。您的新类别应该是刚刚创建的顶级系统链接。如果不是,则按新类别的 id 号过滤表。进入这个新的重定向。
  3. 将重定向更改为永久并复制目标路径。下一步您将需要它。保存您的更改。
  4. 使用以下选项创建新的自定义 URL 重定向并保存
    • 商店:适用的商店。必须与您要重定向的类别的商店相匹配
    • ID 路径:您希望类别转到的 URL。(即礼品卡)
    • 请求路径:将您从上一步复制的目标路径粘贴到此处
    • 目标路径:您希望类别转到的 URL。(即礼品卡)
    • 重定向:设置为永久 301
  5. 转到索引管理并刷新您的目录 URL 重写(如果需要)

您现在应该能够转到前端并在菜单中看到新类别。单击它会将您直接重定向到您提供的链接。与其他方法相比,我更喜欢这种方法,因为它可以让您更好地控制静态链接的放置位置,并允许您将静态链接的菜单项放在子菜单中。

该视频逐步展示了 Magento Go 的这项技术,但所有 Magento 风格的过程都是相同的。 http://www.youtube.com/watch?v=5rSIQlRC8Xk

于 2013-11-20T17:24:19.223 回答
4

这是您的答案: http: //www.magentocommerce.com/wiki/4_-_themes_and_template_customization/navigation/add_home_link_to_menu_bar

于 2012-04-11T18:12:41.300 回答
3

你可以试试这个方法。我认为这种方式比其他方式更合适。

http://www.atwix.com/magento/how-to-add-a-new-item-to-the-navigation-menu/

于 2013-06-20T10:58:20.463 回答
1

有几种方法可以做到这一点,你可以重写 Mage_Catalog_Block_Navigation 来实现这一点。

在 renderCategoriesMenuHtml 函数中,您可以使用计数器在 foreach 循环中的各个位置捕获它并渲染一个块:

if ($j == 1) {
    $html .= $this->getLayout()->createBlock('namespace/yourmodule')->setTemplate('topMenu/link.phtml')->toHtml();
}

或者像这样直接渲染链接:

$html .= '<a href="yourlink.php">Link Name</a>';

第一种方法为前端开发人员提供了更多的灵活性,而不是在类中硬编码。

您还可以通过此方法实现一些严肃的操作,例如将图像添加到菜单中,我使用类似的方法在菜单中实现“特色产品”功能。

于 2013-06-20T23:05:30.170 回答
-1

如何添加magento顶部菜单超链接标题标签 打开文件并查看代码

$html .= 'getUrl() 。'" ' . $outermostClassCode . ' >' . $this->escapeHtml($child->getName()) . '';

app/code/core/Mage/Page/Block/Html/Topmenu.php

$html .= 'getUrl() 。'" ' . $outermostClassCode . 'title="' . $this->escapeHtml($child->getName()) 。'">' . $this->escapeHtml($child->getName()) . '';

于 2013-05-02T11:57:13.623 回答
-1

top.menu您可以使用自定义链接在内部创建一个块。将此添加到您的主题local.xml文件中:

<reference name="header">
    <reference name="top.menu">
        <block type="page/template_links" name="top.menu.custom-links">
            <action method="addLink" translate="label title">
                <label>New Link</label>
                <url>my-url</url>
                <title>New Link</title>
                <prepare>true</prepare>
                <urlParams helper="core/url/getHomeUrl"/>
                <position>60</position>
            </action>
        </block>
    </reference>
</reference>

我认为这是最简单的方法。

于 2016-01-21T10:40:35.483 回答