目前,当我通过类别显示设置将cms静态块添加到类别页面时,它会显示但是与左列内联。我希望它出现在上面,左栏和产品在下面。
视觉上,
而不是:
左栏|静态块
| Products
我想要它:
Static Block
左栏|产品
任何想法?
答案 0 :(得分:0)
假设您使用了left-bar.phtml
的2列你必须在布局中创建一个新的结构块
修改2columns-left.phtml文件
.....
<div class="wrapper">
<?php echo $this->getChildHtml('global_notices') ?>
<div class="page">
<?php echo $this->getChildHtml('header') ?>
<div class="main-container col2-left-layout">
<div class="main">
<?php echo $this->getChildHtml('breadcrumbs') ?>
<?php echo $this->getChildHtml('categorystaticblock'); //<---new block ?>
<div class="col-main">
<?php echo $this->getChildHtml('global_messages') ?>
<?php echo $this->getChildHtml('content') ?>
</div>
<div class="col-left sidebar"><?php echo $this->getChildHtml('left') ?></div>
</div>
</div>
<?php echo $this->getChildHtml('footer') ?>
<?php echo $this->getChildHtml('before_body_end') ?>
</div>
</div>
.....
现在在catalog.xml中声明新结构块中的内容
<catalog_category_default translate="label">
<label>Catalog Category (Non-Anchor)</label>
<reference name="categorystaticblock">
<block type="catalog/category_view" name="categorystatickblock" as="categorystatickblock" template="catalog/category/staticblock.phtml">
</reference>
<reference name="left">
<block type="catalog/navigation" name="catalog.leftnav" after="currency" template="catalog/navigation/left.phtml"/>
</reference>
<reference name="content">
....
现在创建新文件 目录/类别/ staticblock.phtml
<?php if($this->isContentMode() ||$this->isMixedMode()): ?>
<?php echo $this->getCmsBlockHtml() ?>
<?php endif; ?>
现在从目录/ category / view.phtml删除或注释
<?php echo $this->getCmsBlockHtml() ?>
回显cms阻止的行,否则你会在页面上得到它两次
希望这有帮助
再见 朱塞佩
答案 1 :(得分:0)
遵循朱塞佩的说法,它几乎适用于我。我花了几个小时才弄明白我错过了什么。事实证明,您必须在page.xml文件中添加一个新内容,其中包含&#34; content&#34;块已定义。
<block type="core/text_list" name="categorystaticblock" as="categorystaticblock" translate="label">
<label>Static category content</label>
</block>
同样在Giuseppe提供的XML中,有一个错字。必须在&#34; categorystatickblock&#34;的最后?块。