是否可以为每个商店定义 Magento 布局更新

2024-03-26

我有一个 Magento 安装运行两个不同的网站。一个销售电子书,另一个不销售,因此业务团队希望看到“我的下载”链接从应用程序“我的帐户”区域的客户导航块中删除。

我可以看到 design/frontend/base/layout/downloadable.xml 中定义的链接,但看不到任何定义的方式,可以让我仅在其中一个网站上禁用该链接。显然,我可以覆盖此 XML 以全局关闭,但我需要将更改限制在范围内。

如何在多站点 Magento 安装中的单个网站或商店上定义布局覆盖?

根据以下回复,我做了以下工作:

创建了 app/local/Mage/Customer/Block/Account/Navigation.php 并添加了一个不在核心代码中的方法removeLink()。

如果我在 local.xml 中进行以下更改,下载链接将被删除:

<?xml version="1.0" encoding="UTF-8"?>
<layout>
    <default>
        <remove name="catalog.compare.sidebar"/>
    </default>   
    <customer_account>
        <reference name="customer_account_navigation">
            <action method="removeLink" translate="label" module="downloadable"> <name>downloadable_products</name></action>
        </reference>
    </customer_account>
</layout>

但是,如果尝试针对特定商店,则不然。例如。

<?xml version="1.0" encoding="UTF-8"?>
<layout>
    <default>
        <remove name="catalog.compare.sidebar"/>
    </default>
    <STORE_mm>
    <customer_account>
        <reference name="customer_account_navigation">
            <action method="removeLink" translate="label" module="downloadable"> <name>downloadable_products</name></action>
        </reference>
    </customer_account>
    </STORE_mm>
</layout>

正如安东建议的那样,为您的商店设置一个新的布局主题。对于站点范围+商店范围的任何内容的另一种方法是使用商店布局句柄 - 它就像<default>每个商店应用的句柄。如果您的商店代码(在“管理商店”>“商店视图”下)是“foo”,则商店布局句柄将为<STORE_foo>.

Ref. Mage_Core_Controller_Varien_Action::addActionLayoutHandles()

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以为每个商店定义 Magento 布局更新 的相关文章

  • Magento:更改默认语言

    我又搜索了几个小时 所以我在这里 如何将 Magento 中的默认 英语 语言更改为任何其他语言 基本上 我希望 B 店的所有客户默认首先到达该网站的法语版本 而不是英语版本 多谢 在管理菜单中系统 gt 配置 显示的第一个选项卡应该是Ge
  • Magento - 在控制器和块之间传递数据

    非常快速和简单的问题 但我找不到一个合适的答案 将数据从控制器传递到 Magento 中的块的最佳方法是什么 如果它有所不同 我将按如下方式加载布局 this gt loadLayout array default myModule def
  • Magento CE :: 第一次订购有折扣吗?

    是否有任何合理的方式可以为客户的第一笔订单提供折扣 我想这会要求用户注册一个免费帐户 这很好 但在那之后 我就陷入了困境 Magento 中的促销功能无法满足此类需求 Google 也找不到任何好的潜在客户 Ideas 没有任何开箱即用的方
  • 导出产品的 csv 文件时出现“无效实体模型”错误

    while 导出产品 csv 文件从后端 magento 管理面板 当我单击继续生成 csv 文件时 它会提示我以下错误 无效的实体模型 我正在使用 magento 1 6 2 CE 已编辑 我使用magento默认导出 导入服务意味着从管
  • Magento group by 日期字段上的子句

    我需要获取指定月份一天内 grand total 的订单总数 SUM MIN MAX 和 AVG 这就是我正在做的事情 collection gt getSelect gt columns SUM base grand total AS t
  • 使用自定义选项时,Magento 1.7.0.1 将价格重置为 0

    我在用着Magento 1 7 0 1最近刚刚升级1 6 2 0 我有 SCP 扩展以及 MageWorx 高级自定义选项 我有一个可配置的产品 其中关联的简单产品具有自定义选项 如果您选择以下组合中的下拉菜单 您将看到带有可用自定义选项的
  • 一个人可以在 Magento 社区版上托管多个商店吗?

    一个人可以在 Magento 社区版上托管多个商店吗 以及如何在设置每个新商店时自动为其创建子域 是的 您可以从 Magento 社区版运行多个站点 Magento 官方博客实际上刚刚发布了一篇关于此问题的帖子 您可能想查看一下 http
  • 更新某些类别的左列/如何在布局文件中设置类别 ID

    我想要一个在左侧显示某些类别幻灯片的块 但是 我通过引用布局文件中的左列 在所有页面中显示了幻灯片放映块 我们需要幻灯片仅出现在左侧的某个类别 id 225 中 到目前为止我的解决方案路线图 1 将特定类别 url 重写到我的自定义模块 控
  • 我如何覆盖Mage_Core_Controller_Request_Http

    我对 Mage Core Controller Request Http 做了一些更改 但在使用 magento 分发的文件中 我知道这不是最好的方法 但我无法弄清楚如何覆盖控制器目录中的文件 我可以找到如何覆盖控制器目录中的文件 谁能告诉
  • 我需要进行哪些更改才能使 Magento 与 PHP 5.3 配合使用?

    我需要将我的服务器升级到 PHP 5 3 但安装了 Magento 而且我知道 Magento 不能很好地与 PHP 5 3 配合使用 我认为变化不会太大 根据我所读到的 但是 我想我应该向大众开放 有人成功做到这一点吗 如果是这样 你记好
  • 扩展 Magento 购物车

    我需要扩展 Magento 购物车以包含商店定位器的额外步骤 我知道我需要覆盖核心 OnePage 控制器 Mage Checkout OnepageController 和块 Mage Checkout Block Onepage 但是在
  • 如何导出带有产品完整 url 的产品 csv

    我想导出包含完整产品 url 的产品 CSV 即包括基本 url 我不想手动执行此操作 是否可以自定义代码 以便产品导出具有完整的 url
  • Magento 购物车未更新阿拉伯语商店视图中的数量

    我在 Magento 1 8 1 安装中遇到以下问题 我有两种商店视图 英语 默认 和阿拉伯语 在英文商店视图中 如果我将产品添加到购物车 我可以通过在数量框中输入新数量并单击更新购物车来修改数量 这会更改数量和总数 但是 当我切换到阿拉伯
  • 如何配置 Magento Enterprise 使用 Solr 作为主要搜索引擎?

    我尝试寻找文档 但它非常稀疏 我编写了以下指南 希望它可以帮助人们节省 2 3 个小时的安装 设置和配置时间 与 MySQL 全文搜索标准设置相比 使用 Solr 带来的性能提升非常惊人 在您的 Magento 安装中让它工作绝对值得花时间
  • Magento - 检查管理员和客户是否登录

    我有一个安装了 Magento 1 4 0 1 的 Web 服务器 我有另一个与之共享凭据的网站 我已经设法检查客户是否登录 在更改 Magento 中的 cookie 位置之后 但是当我还尝试确定管理员是否登录时 事情变得复杂 我只能得到
  • Magento Connect 登录后尝试更改为什么路径?

    我每次都会收到错误消息 部署 FTP 错误 登录后无法 chdir 我通过 chmod ing 我的 complete path to magento installation dir 成功完成了第一次连接和设置下载器 至 0777 在 d
  • 如何在magento中将订单状态设置为“完成”

    如何手动将订单状态设置为 完成 我正在使用以下代码 但它给出错误消息 订单状态 完成 不得手动设置 order Mage getModel sales order gt loadByIncrementId order id order gt
  • 在 Magento 中获取过去 24 小时内的订单商品

    我正在尝试获取过去 24 小时内的所有订单商品 我已锁定查询 因此它返回了我需要的内容 order id 和created on 值 order items Mage getResourceModel sales order item co
  • 将搜索栏从 magento 主页的标题中移动

    我是 magento 的新手 我想将搜索栏从标题移动到主页的中间位置 以便它仅显示在主页上 我在 magento 论坛上阅读了许多相关答案 但所有人都在尝试编辑 box css 中的 mini search 元素 但不幸的是我在此文件中没有
  • 为什么在网关取消的订单状态没有转换为“ payment_pending ”?

    我正在使用 Magento 社区 ver1 6 1 0 我在 Magento wiki 上找到了这个状态图http www magentocommerce com wiki 2 magento concepts and architectu

随机推荐