我最近将我的Magento从1.9.0.1更新到1.9.2.2,更新后没有显示2个块。这是家庭CMS中的代码:
{{block type="catalog/navigation" name="catalog.category" template="catalog/category/cat_list.phtml"}}
{{block type="filterproducts/latest_home_list" template="callthis/filterproducts/list.phtml"}}
知道更新后他们为什么不在那里?模板文件在那里,所以这不是原因。我调试了代码,它似乎没有进入模板文件,所以我猜这就是原因,但为什么不去呢?
谢谢!
答案 0 :(得分:5)
1.9.2.2版本包含SUPEE-6788安全补丁,它修复了允许访问私人信息的漏洞。这意味着CMS页面和电子邮件中使用的块必须列入白名单
默认情况下,仅允许core/template
和catalog/product_new
块类型。要使用其他(在您的情况下为catalog/navigation
和filterproducts/latest_home_list
),您必须将它们列入白名单
要做到这一点,您只需要将它们包含在permission_block
表中。您可以通过直接将它们插入数据库中,或使用安装脚本来实现,如下所示:
<?php
/** @var $installer Mage_Core_Model_Resource_Setup */
$installer = $this;
$installer->startSetup();
$installer->getConnection()->insertMultiple(
$installer->getTable('admin/permission_variable'),
array(
array('variable_name' => 'xml_path/custom/variable', 'is_allowed' => 1),
)
);
$installer->getConnection()->insertMultiple(
$installer->getTable('admin/permission_block'),
array(
array('block_name' => 'catalog/navigation', 'is_allowed' => 1),
array('block_name' => 'filterproducts/latest_home_list', 'is_allowed' => 1)
)
);
$installer->endSetup();
请注意,此设置的第一部分是允许自定义配置变量,您不需要它们来解决当前问题,我只是为了完整性而包含它。
您可以找到有关修补程序in magento's website
的更多信息答案 1 :(得分:2)
这是由您的更新补丁之一引起的。
快速修复:
permission_block
catalog/navigation
和filterproducts/latest_home_list
的行,以允许显示这些块。此更新的更多文档: