2012-04-04 8 views
0

は、どのような方法は、それがすでにフロントエンドエリアのために存在するとして、我々はは、カスタマイズされた管理テーマに関して簡単に代替階層メカニズムを活性化させる可能性がありますか?MagentoのAdminhtmlパッケージ/テーマ(ノー)フォールバック

どこで、どのように「フロントエンド」の領域のために使用されるこのクラス、Mage_Core_Model_Design_Packageは、インスタンス化されることが明らかではない、と我々はそれが同様にバックエンドのために動作させるために、それを書き換え、拡張することができれば私は思っていました。

現在、adminhtml/default/default/files(デザインとスキンの両方のフォルダ)をadminhtml/package_name/theme_nameにコピーし、これらのコピーしたファイルを処理するのは非常にクリーンな方法ではなく、複数のパッケージs)および/またはテーマ(複数可)は、デフォルト/デフォルトと比較して少ししか変更または改善をもたらさない。それは後退するべきだと私は思う。

アイデア、誰ですか?

+0

フォールバックが存在しない場合はプログラムしてください。ジェット機 –

答えて

2

Mage_Core_Model_Design_Package :: _ fallbackにバグがあります。これはadminhtml領域のフォールバックパッケージとして基本パッケージを使用します。代わりに、adminhtmlの基本パッケージが存在しないため、デフォルトのパッケージを使用する必要があります。あなたは、デザインのパッケージモデルの書き換えを作成し、_fallback()関数を修正することができます:

protected function _fallback($file, array &$params, array $fallbackScheme = array(array()))  
     ... 
     $params['_package'] = self::BASE_PACKAGE; 
     // otherwise no admin packages with fallback to default package possible 
     if ($this->_area == 'adminhtml') { 
      $params['_package'] = self::DEFAULT_PACKAGE; 
     } 
     ... 
    } 

代替ソリューションは、単にアプリ/設計/ adminhtml /ベースにフォルダアプリ/設計/ adminhtml /デフォルトの名前を変更することです。しかし、新しいマゼンタ版にアップデートしている場合、どうなるのか分かりません。

関連する問題