我制作了一个自定义模块,并制作了一个 system.xml ,我在其中检查管理员是否要包含 css 如果管理员选择一个我在我的模块 layout.xml 代码中使用下面的 cod 包含 one.css
<action method="addCss" unlessconfig="mymodule/addcss/one"><stylesheet>mymodule/test/two.css</stylesheet></action>
<action method="addCss" ifconfig="mymodule/addcss/one"><stylesheet>mymodule/test/one.css</stylesheet></action>
现在,如果管理员从后端选择否,它会包含在线 two.css,但当管理员选择是时,它会同时包含 css 1 和 css 2.. 我只想实现包含不同不同 css 的 if else 条件。我如何在不使用第三方扩展的情况下实现这一目标。
最佳答案
unlessconfig
提到了in the article suggested in Meenakshi's comment由 Aoe_LayoutConditions 扩展添加,不在 Magento 核心中。请参阅 Mage_Core_Model_Layout
了解可用的功能。也就是说,具有 addCss
(Mage_Page_Block_Html_Head
) 的类也具有用于删除诸如 css 之类的项目的方法。所以你应该能够做到:
<action method="removeItem" ifconfig="mymodule/addcss/one">
<stylesheet>mymodule/test/two.css</stylesheet>
<type>skin_css</type>
</action>
<action method="addCss" ifconfig="mymodule/addcss/one">
<stylesheet>mymodule/test/one.css</stylesheet>
</action>
关于xml - Xml 中的 If Else 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25094863/