(モジュールから) BLOCK クラスにアクセスする方法を見つけました... phtml ファイルで。基本的に「$var = Mage::blahblah....」を使用して、モジュール内の任意のブロック ファイルにアクセスできます。
この stmt を保存していませんでした。もう一度使用する必要があり、必要な情報が見つかりません。
ステートメントがどうなるか知っている人はいますか?
どうもありがとう
ブロック クラスのインスタンスは、次のようにどこでもインスタンス化できます。
Mage::app()->getLayout()->createBlock('core/template')->...;
//or $this->getLayout()->createBlock('core/template')->...;
//or $this->getLayout()->getBlock('block_name_loaded_in_controller_or_layout_or...');
ベンの応答をさらに進めるために、私は以下を使用しました:
$cmsBlock = Mage::getModel('cms/block')->load($blockId)->getContent();
if($cmsBlock) {
...do stuff...
}
特定の静的ブロックが存在するかどうかを確認するとき。これを通常どおりエコーして、コンテンツを表示できます。
ここでの主な違いは次のとおりです。
Mage::app()->getLayout()->createBlock('cms/block')->setBlockId($blockId)->toHtml();
新しいブロックを作成しますが、$blockId が有効でない場合は空になることがあります。最初のメソッドは、その特定の静的ブロックを呼び出します。ここには別の方法があるかもしれませんが、これが私にとってうまくいった方法です。