2016-03-19 6 views
0

フロントエンドの色を管理する管理パネルを開発します。テーマファイル(header.phtml、footer.phtmlなど)にすべての色変数を追加したくないのですが、すべてのCSSクラスと色変数を含むファイルを生成したいと思います。 Ex。phpまたはphtmlファイルをCSSに変換する

<?php 

$color = Mage::getStoreConfig('themeadmin/frontend/general_color'); 

echo '.top-header-container { background-color : #'.$color.'; } .menu { background-color : #'.$color.'; }'; 
?> 

これをテーマファイルに追加しないとどうすればいいですか?私はCssファイルを生成することはできますか?何が最善の方法ですか? ありがとう

+1

私はmagentoについてではないので、この質問をトピックとして閉じるよう投票しています。より一般的な指向のstackoverflowの質問を投稿することを検討してください –

+0

私が開発したものは、他のCMSやPHPスクリプトのための私のマゼンタテーマの管理パネルですので、Magentoです – user3309614

+0

私はそれらのCSSファイル管理者のユーザ選択に基づいて、テーマに関連するものを含めます。 – Prateek

答えて

0

使用する実際のスタイルシートとして、.phpファイル(またはコントローラアクション)を簡単に呼び出すことができます。

参照:だからInclude: css with php file extension?

、あなたは次の操作を行うことができる可能性を考慮:

  1. あなたのモジュール内のコントローラのアクションを作成します。
  2. 単に出力有効フォーマットされたスタイルシート
  3. が潜在的に観測イベント/モデル/コントローラのアクションを経由して
、XMLを介し、あなたのレイアウトにそのアクションを追加するか、またはプログラムによってレイアウトにシートを注入するために、このアクションのコード

例:

Mage::app()->getLayout()->getBlock('head')->addCss(
     'dyncatprod/adminhtml.css' 
); 

別の可能性は、機能性を保存する(イベントを行う必要があります)と、選択した管理オプションを形成する1つの特定の.cssファイルを生成adminhtmlにフックすることです。最終結果は静的に指定された1つのファイルであり、通常はそのファイルに含めます。あらかじめ保存されているインスタンスにデフォルトのベースファイルを指定してください。

この方法では、常に正しい値を持つファイルがフラットスタイルシートとして確保されます。

+0

おかげでproxiblue、私にチュートリアルのリンクか何かこれを作るためのesleを教えてもらえますか?私はmagentoで新しく、チュートリアルで管理パネルを開発しているからです。私はcss.phpを試してみるのですが、ブラウザのインス​​ペクタは私にエラーを出します:リソースの読み込みに失敗しました:サーバは403(禁止された)ステータスで応答しました。フォルダmedia/css/css.phpの許可は775です。しかし、仕事はありません – user3309614

+0

こんにちは。申し訳ありませんが、あなたのためにコード例やGoogleを提供するために忙しいです;) - あなたが必要とするすべてが答えにあります。私はオプション2と一緒に行きたいと思います。Magentoモジュールを作成して、イベントのためにオブザーバーを実行し、正しいイベントを見つけて、コードを書く方法をgoogleで教えてください:) - 幸運 – proxiblue

+0

私は禁じられた問題についてはわかりません。 Webサーバーでセキュリティ機能が有効になっている可能性があります。これはしばらくの間行われていないので、何か変更があったかどうかは分かりません。オプション2を使用するとNOOPになりますが、固定ファイル名を出力することができます。これを含めると通常どおりになります。 – proxiblue

関連する問題