在Magento有一个简单的方法来包含一些东西吗?

时间:2014-07-21 22:39:26

标签: php magento caching controller

我目前正在制作一个简单的流程,我已经构建了一个控制器,让我知道一个人的浏览器是否运行的东西与我放在一起的设置相当。如果我转到http://example.com/useraction/index/checkbrowser,则代码将返回读取<!--- GOOD TO GO --->的注释行,或者返回图像和链接以鼓励用户升级其浏览器。我通过我构建的控制器执行此操作,因为它似乎没有Magento所做的所有缓存工作。让我们面对它,如果我在视图上这样做(即使我认为这通常应该在视图上),那么正确的浏览器信息将不会返回给用户。

考虑到这一点,我尝试了以下内容:

echo $this->getChildHtml('/useraction/index/checkbrowser');
echo $this->getChildHtml('/useraction/index/checkbrowser',false);
echo $this->getLayout()->createBlock('page/template')->setTemplate('/useraction/index/checkbrowser')->toHtml();
include('/useraction/index/checkbrowser');

这些都不起作用。我错过了什么?

1 个答案:

答案 0 :(得分:0)

我认为出于浏览器检查的目的,Javascript是最好的。 你可以在其中一个模板文件中包含javascript,让[yourthemes] / [yourmodule] /browser-check.phtml说。然后你将添加local.xml:

<default>
<reference name="footer"> 
  <block type='core/template' name='browser.check' template="[yourthemes]/[yourmodule]/browser-check.phtml" />
</reference>
</default>

然后在你的footer.phtml中,你可以回显出来:

echo $this->getChildHtml('browser.check');

这会在每个页面中添加browser-check.phtml,你可能想要弹出一个模式请求浏览器升级perhap?