0

プロジェクトのスマート テーマ ソリューションを考えています。アイデアは次のとおりです。themes という名前の別のフォルダーを作成し、global という名前のフォルダー内に画像とスタイル シートを格納します。内部には、たとえば白黒と呼ばれるフォルダーがさらにあります。

ファイル構造 (パイプ | でマークされたディレクトリ、アスタリスク * のファイル):

| global
  | css
    * style.css
    * global.css
  | img
    * logo.png
    * background.png
| white
  | css
    * style.css
  | img
    * logo.png
| black
  | css
    * style.css
  | img
    * background.png

今私が達成したいのは、静的コンテンツの一種のオーバーロードです。白いテーマが選択されているとしましょう。次に、4 つのファイルに対するすべての要求は次のようになります。

./white/css/global.css
./white/css/style.css
./white/img/logo.png
./white/img/background.png

実際のリクエストを行うには、一連のルールが必要です。

./global/css/global.css
./white/css/style.css
./white/img/logo.png
./global/img/background.png

リクエストされたテーマに global.css と background.png が存在しないためです。

可能な限り透過的にする最善の方法は、htaccess でこれらのルールを定義することだと思います。残念ながら、私は htaccess の専門家ではないので、stackoverflow を使用しています。私は基本的にif条件に行き詰まり、実際に要求されたファイルが存在するかどうかを確認しています。

どんな助けやアドバイスも大歓迎です。

4

1 に答える 1

0

必要だったのは、.htaccess を次のルールに従って、themes というフォルダーに配置することだけです。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (/.*) global$1
于 2013-01-22T14:09:01.423 に答える