0

Magento ベースのサイトで簡単な作業を行っていますが、CMS 内で TPL ファイルを取り込む方法が思い出せません。CMS ページで次のコードを使用してみました...

{{block type="cms/block" block_id="page_heading" template="cms/content_heading2.phtml"}}

TPL ファイルは既に正しいフォルダーにあります... app/design/frontend/default/wfs/cms

この PHTML ファイルを正しくインクルードする方法がわかりません。正しい構文を提供することは可能ですか?

ありがとう!

4

1 に答える 1

0

あなたが言う時

`type="cms/block"`

「cms/block template object, which translates to aMage_Cms_Block_Block」クラスを作成するように Magento に指示しています。このブロックのソースを見ると

#File: app/code/core/Mage/Cms/Block/Block.php
protected function _toHtml()
{
    $blockId = $this->getBlockId();
    $html = '';
    if ($blockId) {
        $block = Mage::getModel('cms/block')
            ->setStoreId(Mage::app()->getStore()->getId())
            ->load($blockId);
        if ($block->getIsActive()) {
            /* @var $helper Mage_Cms_Helper_Data */
            $helper = Mage::helper('cms');
            $processor = $helper->getBlockTemplateProcessor();
            $html = $processor->filter($block->getContent());
        }
    }
    return $html;
}

これはテンプレートをレンダリングせず、代わりに Magento の静的ブロック オブジェクトをレンダリングすることがわかります。

試す

`type="core/template"`

代わりに、ブロック ID が一意であることを確認してください。

于 2013-05-02T18:11:31.593 に答える