1

在 magento 中,我只想在主页中显示一个静态块。

我尝试了这个问题中提到的解决方案,但没有奏效。

我在 page.xml 文件中添加了这段代码,它开始给出错误,所以我把它从他们那里剪下来,放到 local.xml 文件中:

<cms_index_index>
  <reference name="content">
    <block type="cms/block" name="home-page-block">
      <action method="setBlockId"><block_id>home-page-block</block_id></action>
    </block>
  </reference>
<cms_index_index>

它没有给出错误,但仍然没有显示静态块。我什至在 2columns-right.phtml 文件中输入了这个,尽管我认为这不是必需的。

<?php echo $this->getChildHtml('home-page-block') ?>

但它仍然没有工作。有人能指出我错过了什么吗?

4

2 回答 2

0

假设您已经完成了所有 clear-cache、disable-cache 标准过程,我认为句柄应该是cms_index_defaultindex而不是cms_index_index.

其次,你是对的,getChildHtml()因为你已经在<reference name="content" />.

于 2013-08-09T06:45:03.873 回答
0
one of the easiest thing to do is
<?php
$homePageUrl = Mage::getBaseUrl(); //this gets you your domain name sort of
$currentUrl = $this->helper('core/url')->getCurrentUrl(); // this gets the current url

//you can now do your conditional stuff in here
if($currentUrl == $homePageUrl) : ?>

//then display your block by calling the block 
    <div style="margin: 0 auto; width: 100%; max-width: 1180px;">
        <?php echo $this->getLayout()
            ->createBlock('cms/block')
            ->setBlockId('seo-homepage')
            ->toHtml();
        ?>
    </div>
<?php endif; ?>
于 2014-08-04T22:31:24.270 回答