Magento - 布局文件中的条件

发布于 2024-11-05 03:06:25 字数 142 浏览 0 评论 0原文

Magento 是否可以有条件地将块添加到布局 xml 文件中?

我正在考虑有一个管理配置选项复选框 - 如果选中,则需要将一个块添加到页面,如果未选中,反之亦然。

我可以想出一种通过代码来完成此操作的方法,但实际上不是布局文件系统本身。

Is it possible in Magento to conditionally add blocks into a layout xml file?

Im thinking along the lines of having an admin config option checkbox - if checked then a block needs to be added to the page and vice versa if not checked.

I could think of a way of doing this via code but not the actualy layout file system itself.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

神经暖 2024-11-12 03:06:25

ifconfig 参数可用于有条件地调用操作方法

<action method="someBlockMethod" ifconfig="path/to/config"><param1>value</param></action>

path/to/config 路径传递给 Mage::getStoreConfigFlag() 以返回布尔值。

我会尝试将其与 insert 方法结合使用

<action method="insert" ifconfig="path/to/config"><param>block_name</param></action>

名称或别名为 block_name 的块需要已通过其他 PHP 或 XML 插入到布局对象中,因此在将其插入新块后,您可能需要采取额外的步骤将其从原始块中取消设置。

The ifconfig paramater can be used to conditionally call an action method

<action method="someBlockMethod" ifconfig="path/to/config"><param1>value</param></action>

The path/to/config path is passed to Mage::getStoreConfigFlag() to return a boolean.

I'd try using this in combination with the insert method

<action method="insert" ifconfig="path/to/config"><param>block_name</param></action>

The block with the name or alias of block_name will need to be already inserted into the layout object by other PHP or XML, so you may need to take additional steps to unset it from its original blocks after inserting it into your new block.

隱形的亼 2024-11-12 03:06:25

你可以试试这个(我自己没试过):

<action ifconfig='your/extension/active'

you can try this (i haven't tried it myself):

<action ifconfig='your/extension/active'
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文