我正在创建类别页面,我想添加两个静态块。当我通过CMS /静态块时,我意识到我只能向任何页面添加一个静态块。我无法找到任何可以添加2个或更多静态块的地方。有没有办法可以在一个类别页面中添加两个或更多这样的静态块。
答案 0 :(得分:4)
如果你想从Catalog-> Manage Categories中添加静态块,那么你知道你可以一次调用1个静态块,但是通过使用简单的技巧,你可以调用任意数量的静态块。 / p>
从管理面板目录 - >管理类别中调用1个静态块。然后从静态块调用其他静态块,您从类别中调用它。
我希望这会对你有所帮助。
答案 1 :(得分:2)
首先将新字段添加到类别中。我已创建新字段名称“landing_page_2”。我为这个作品创作和扩展......
步骤1:创建config.xml 在:app \ code \ local \ Amit \ Catmattribute \ etc
<?xml version="1.0"?>
<config>
<modules>
<Amit_Catmattribute>
<version>0.1.0</version>
</Amit_Catmattribute>
</modules>
<global>
<helpers>
<catmattribute>
<class>Amit_Catmattribute_Helper</class>
</catmattribute>
</helpers>
<models>
<catmattribute>
<class>Amit_Catmattribute_Model</class>
<resourceModel>catmattribute_mysql4</resourceModel>
</catmattribute>
</models>
<resources>
<categoryattribute1394603225_setup>
<setup>
<module>Amit_Catmattribute</module>
<class>Mage_Catalog_Model_Resource_Eav_Mysql4_Setup</class>
</setup>
<connection>
<use>core_setup</use>
</connection>
</categoryattribute1394603225_setup>
<categoryattribute1394603225_write>
<connection>
<use>core_write</use>
</connection>
</categoryattribute1394603225_write>
<categoryattribute1394603225_read>
<connection>
<use>core_read</use>
</connection>
</categoryattribute1394603225_read>
</resources>
</global>
</config>
第二步:创建mysql4-install-0.1.0.php:app \ code \ local \ Amit \ Catmattribute \ sql \ categoryattribute1394603225_setup
<?php
$installer = $this;
$installer->startSetup();
$installer->addAttribute("catalog_category", "landing_page_2", array(
"type" => "int",
"backend" => "",
"frontend" => "",
"label" => "CMS Block 2",
"input" => "select",
"class" => "",
"source" => "catalog/category_attribute_source_page",
"global" => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
'group' => 'Display Settings',
"visible" => true,
"required" => false,
"user_defined" => false,
"default" => "",
"searchable" => false,
"filterable" => false,
"comparable" => false,
"visible_on_front" => false,
"unique" => false,
"note" => ""
));
$installer->endSetup();
Step3:创建Data.php
应用\代码\本地\阿米特\ Catmattribute \助手
<?php
class Amit_Catmattribute_Helper_Data extends Mage_Core_Helper_Abstract
{
}
步骤4:app / etc / modules /
下的Amit_Catmattribute.xml<?xml version="1.0"?>
<config>
<modules>
<Amit_Catmattribute>
<active>true</active>
<codePool>local</codePool>
<version>0.1.0</version>
</Amit_Catmattribute>
</modules>
</config>
从app / code / core / Mage / Catalog / Block / Category /
复制view.php到app / code / local / Mage / Catalog / Block / Category / 添加新功能
public function getCmsBlocktwoHtml()
{
if (!$this->getData('cms_block_html_2')) {
$html = $this->getLayout()->createBlock('cms/block')
->setBlockId($this->getCurrentCategory()->getLandingPage2())
->toHtml();
$this->setData('cms_block_html_2', $html);
}
return $this->getData('cms_block_html_2');
}
app\design\frontend\your package\your template\template\catalog\category\view.ptml
below code add after <?php echo $this->getCmsBlockHtml() ?>
<?php echo $this->getCmsBlocktwoHtml()?>
希望它会有效。该部分将管理madmin
答案 2 :(得分:0)
您可以将以下代码放在.phtml文件中以调用静态块
<?php $app = Mage::app(); ?>
<?php echo $app->getLayout()
->createBlock('cms/block')
->setBlockId('your_block_id')->toHtml(); ?>
答案 3 :(得分:0)
您可以做的是从cms&gt;静态块(例如:st1和st2)创建两个必需的静态块,以及另一个包含这些静态块的静态块(例如:dual_block)。
在dual_block静态块中,您可以插入窗口小部件,选择窗口小部件类型为CMS Static Block
,然后选择所需的块。您也可以类似地添加其他块。制作所需的格式以根据需要显示块。
然后在所需类别中,单击显示设置选项卡,选择显示模式为static block only
,然后在CMS阻止中选择dual_block
静态块。然后保存类别,现在您在类别页面中显示了两个静态块。
希望它有所帮助!!