Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Magento 主类别和子类别的不同布局_Magento_Layout_Categories_Magento 1.9 - Fatal编程技术网

Magento 主类别和子类别的不同布局

Magento 主类别和子类别的不同布局,magento,layout,categories,magento-1.9,Magento,Layout,Categories,Magento 1.9,所以我有一个奇怪的问题困扰着我好几天了。我正在为一家magento商店制作一个新主题,设计要求我为主分类页面和子分类页面创建一个不同的布局 通常的做法是在后台创建或使用其他布局(目录>管理类别>自定义设计>页面布局)。但是,子类别页面继续使用主类别中设置的布局。主类别上的“使用父类别设置”处于禁用状态,但此选项在子类别中不可用。我试着使用正常的布局开始,主类别在1列,子类别在2列,但它只是继续加载子类别页面上的1列。我还尝试在local.xml文件中设置默认布局,并将子类别的pagelayout

所以我有一个奇怪的问题困扰着我好几天了。我正在为一家magento商店制作一个新主题,设计要求我为主分类页面和子分类页面创建一个不同的布局

通常的做法是在后台创建或使用其他布局(目录>管理类别>自定义设计>页面布局)。但是,子类别页面继续使用主类别中设置的布局。主类别上的“使用父类别设置”处于禁用状态,但此选项在子类别中不可用。我试着使用正常的布局开始,主类别在1列,子类别在2列,但它只是继续加载子类别页面上的1列。我还尝试在local.xml文件中设置默认布局,并将子类别的pagelayout选项保持为空,这也不起作用


其他一些信息,我正在使用Magento1.9和新的RWD主题作为基础。希望有人能帮助我。

您可以在“类别控制器视图”操作中检查类别级别,并添加自定义布局句柄:

$update->addHandle('catalog_category_inner');
然后更新布局xml(catalog.xml)以使用此句柄。例如:

<catalog_category_inner translate="label">
    <reference name="category.products">
         <action method="setTemplate"><template>catalog/category/view_inner.phtml</template></action>
    </reference>
</catalog_category_inner>

目录/类别/视图\u inner.phtml

无论如何,解决方案取决于您需要实现的布局差异。但无论如何,想法都是一样的。如果您需要以某种方式实现不同的布局,请使用自定义布局句柄。事实证明,该商店为其产品使用了进口商。导入器忘记导入“使用父类别设置”,这就是为什么它没有在子类别中显示该选项。由于无法设置该选项,因此将其设置为确实使用父设置,从而解释了为什么子类别使用根目录的布局,即使您在子类别上设置了其他布局