2011-01-31 3 views
1

私は、Magentoによって生成されたレイアウトファイルからテンプレート、ブロックの詳細を提供したいと考えています。あなたがAlan Stormの優れたレイアウトビューアをインストールし、すべてのxmlをスクリーンにプリントアウトすると見ることができる同じ情報です。 (パッケージレイアウトは、私が後に行ったものです。これは、特定のMagentoインストールのすべてのレイアウト構成を含む大規模なXMLファイルです)。Magentoの外でMagento Layout XMLをどのように生成しますか?

私はこのデータを私が実行しているスクリプトから取得するのに苦労しています。アプリケーションディレクトリをindex.phpファイルとともに表示します。

カスタムモジュールインストールをインストールせずに、XMLドキュメントで完全なレイアウトXMLを取得するにはどうすればよいですか?

+2

現在のページレイアウトまたはパッケージレイアウト全体をお探しですか? –

答えて

1

XMLレイアウトを取得するには、Magentoエクステンションを作成して情報を表示し、それをプログラムで表示またはエクスポートするのが最も簡単で簡単な方法です。そうしないと、すべてのXMLファイルを結合するMagentoのロジックを再作成する必要があります。その結果、コードベースが大きくなります。

+0

私はスクリプトを1つのファイルでインストールできるものにしたい、そうでなければAlan Storms Layout Viewerモジュールを使用します。 –

+0

私はスクリプトを1つのファイルでインストールできるものにしたい、そうでなければAlan Storms Layout Viewerモジュールを使用します。私はパッケージビューアから、モジュールをインストールせずにステージング環境にセットアップできる方法で同じ情報を求めています。しかし、私はコミュニティからのいくつかの提案がなければ、これは私にとって不可能かもしれないと思います! –

+0

最後に私はこの情報を得る自分のスクリプトを作成しました。あなたの議論に感謝します。 –

2

私はそれを試していないが、一見私は、まだレイアウトをスキャンする必要がある、それは

Mage::getSingleton('core/layout')->getXmlString() 
+0

他の人にとってうまくやってみると便利ですが、ブロックを追加する準備が整ったレイアウトを作成するだけです。 –

+0

magentoが実行する必要があるすべてのブロックとテンプレートを記述するxmlをどのように構築すればよいですか? –

+1

申し訳ありませんが、私はそれが使用されているページでのみ動作し、 'loadLayout()'が呼び出された後でなければなりません。 – clockworkgeek

3
Mage::app()->getLayout()->getUpdate()->load("default")->asString(); 

コードのこの作品はあなたに与えられたハンドルのレイアウトXMLを与えるべきであると思うだろう完全なxmlを生成するためにすべてのハンドルを見つけるためのファイル。

0
use 'Configviewer' and 'Layoutviewer' 
http://www.abc.com/index.php/index/index?showLayout=package 
http://www.abc.com/index.php/index/index?showLayout=handles 
http://www.abc.com/index.php/index/index?showConfig=true 
関連する問題