私はFrontendページからレイアウトをフェッチしたいMagentoモジュールに取り組んでいます。フロントエンドページでは、すべての種類のページ、つまりCMSページ、カテゴリ、製品、カート、アカウントなどを意味します。Magentoは与えられたページのレイアウトを取得します
私はAlan Stormの優れたmagento-nofrills電子書籍を読んでいます。私はCommercebugプラグイン私のマゼンタサイトを開発するのに役立ちます。私はまた、similairの質問を探してstackoverflowにいくつかの時間を費やした、私はそれを逃した場合は私を許してください。
たとえば、ページIDまたはカテゴリIDがある場合、バックエンドで実行されるコードからそのフロントエンドページのレイアウトを取得するにはどうすればよいですか?
私が要求してプレーしてきたと私はフロントエンドでこのコードを実行すると、インスタンスのためのカタログページを見たとき、私はモジュール、コントローラ、layouthandlesなどが変更されていることがわかります
$request = Mage::app()->getRequest();
$request->setModuleName('cms');
$request->setRouteName('cms');
$request->setControllerName('page');
$request->setActionName('view');
$request->setParam('page_id', 6);
しかし、私はレイアウトからXMLを検査したときに、私は私のIDを持つ(この例では)用のXML CMSのページを表示するためにMagentoのを強制的に見えることはできません= 6:
Mage::app()->getLayout()->getNode()->asXml();
は、たぶん私はあまりにも複雑に考えていますしかし、。特定のページにサイドバーがあるかどうかを確認したいと思います。ブロックと要素はページとサイドバーに表示されます(アクティブブロックのみで、無視されません)。
ありがとうございます! Tim
これを把握しましたか?私は自分自身が好奇心だ。 – chrisjlee