1

次のようなビューアクションを備えたインデックスコントローラーがあります。

echo $this->getLayout()
    ->createBlock('core/template','builder')
    ->setTemplate('pages/builder/view.phtml')
    ->setHeaderText($extra->getHeaderText())
    ->setFooterText($extra->getFooterText())
    ->setProducts($collection)
    ->toHtml();

これに基づいて、builder.xml(モジュールのconfig.xmlで設定されている)でレイアウトの更新を実行しようとしています。ただし、この方法でインスタンス化されたブロックをターゲットにできるかどうかはわかりません。上記のブロック作成に基づいて、次のことを実行できますか?

<layout version="0.1.0">
    <builder_index_view>
        <!-- shouldn't this reference the createBlock() name argument? -->
        <reference name="builder">
            <block type="page/html_header" name="builder.header" as="builder.header" template="pages/builder/header.phtml"/>
        </reference>
    </builder_index_view>
</layout>
4

1 に答える 1

2

を呼び出す前にブロックがインスタンス化されている場合はloadlayout()、はい。

于 2012-10-25T16:57:02.210 に答える