【发布时间】:2014-10-03 19:12:58
【问题描述】:
我在 Magento 1.8.1.0 的 phtml 文件中尝试了以下代码。
包含代码的文件是app/design/frontend/default/mytheme/template/catalog/navigation/left_nav.phtml
此 phtml 文件的 XML 文件是 catalog.xml
<default>
<reference name="top.container">
<block type="cms/block" name="cms.top.callout" before="-">
<action method="setBlockId"><block_id>top_callout</block_id></action>
</block>
</reference>
<reference name="left">
<block type="catalog/navigation" name="catalog.leftnav" template="catalog/navigation/left_nav.phtml" />
</reference>
----
-----
</default>
.
$route = Mage::app()->getFrontController()->getRequest()->getRouteName();
$action = Mage::app()->getFrontController()->getRequest()->getActionName();
if($route == 'cms' && $action == 'index'):
echo "home page";
endif;
.
$is_homepage = Mage::getBlockSingleton('page/html_header')->getIsHomePage();
if($is_homepage)
{
echo "home page";
}
意味着我的条件为真,即每个页面上的“主页”,即使它不是主页。 有什么准确的方法可以找到主页
如果我禁用 Magento 缓存,它可以正常工作
【问题讨论】:
-
你能说出这段代码是在哪个模板中编写的吗? “工作不好”是什么意思?谢谢
-
我在您的布局中看不到目录/导航/custom_leftnav.phtml。尝试用好的替换catalog/navigation/left_nav.phtml。
-
一个干净的方法是创建一个新模块并使用 setTemplate 方法更新布局。
-
@apouey 我更新了我的问题
-
你刷新缓存了吗?
标签: magento magento-1.8