更改每个猫ID的Magento身体背景

时间:2011-01-27 16:38:44

标签: magento magento-1.4

如何更改每只猫ID的Magento身体背景?哪里放代码??

我知道Cat id是:

Mage::getModel('catalog/layer')->getCurrentCategory()->getId()

2 个答案:

答案 0 :(得分:4)

你可以很容易地从类别名称中删除它。默认情况下,Magento会在body标签中添加以下内容:

<body class="catalog-category-view categorypath-electronics-cellphones category-cellphones">

接下来,您可以定义样式表以使用.category-{$category_name}类而不是.category-{$category_id}或类似代码。对于下一个出现并编辑样式表的人来说会更有意义:)

回到你的问题,如果你真的想修改代码并实际使用类别ID,那么你必须以通常的方式修改类别控制器,并添加:

$this->getLayout()->getBlock('root')->addBodyClass('category-' . $category->getId());

..在Mage_Catalog_CategoryController::viewAction()中,与其他类的添加点大致相同。

答案 1 :(得分:0)

这是一种足够灵活的方法,供网站所有者与其网页设计师一起使用(以应用css规则)。

场景:您想要一个类别的相同背景图像&amp;它的孩子。

1)您将布局更新应用于类别管理器中的父类别:

<reference name=”root”><action method=”addBodyClass”><className>caravan-motorhome-lighting</className></action></reference>

2)将父类别设置为使用父类别设置。

3)将子类别设置为使用父类别设置

4)添加身体类声明,如body.caravan-motorhome-lighting {background:url(..)}

您可以找到更全面的解释Magento - changing the body class by category

我在Magento 1.6.1.0中使用过这种技术,但是应该使用早期版本,您可以将布局更新应用于类别。