1

私は Html5Boilerplate で自分のサイトを構築しようとしていますが、ほとんどの部分は思い通りに進んでいます。ただし、CSS 参照を取得して PHP ファイルを更新することはまだできません。

私のフォルダ構造は次のとおりです。

    css/style.css
    page/header.php

今、私が持っているheader.phpファイルに:

    <!-- scripts concatenated and minified via ant build script-->
        <link rel='stylesheet' href='css/style.css'/>
    <!-- end scripts-->

ビルドされた header.php ファイルには次のものが含まれていると思います。

    <link rel='stylesheet' href='css/a4cd4c0.css'/>

残念ながら、参照を更新していません。

project.properties ファイルには、file.pages = page/* があり、header.php ファイルのコメントが削除されているため、ビルド スクリプトがファイルをスキップしないことがわかっています。

次のようなバリエーションを試しました:

    <!-- CSS concatenated and minified via ant build script-->
        <link rel='stylesheet/css' type='text/css' href='css/style.css'/>
    <!-- end CSS-->

しかし、これも何もしていません。. .

PHP ファイルで Html5Boilerplate を使用して CSS ファイルを更新しようとした人はいますか? ビルド スクリプトによって参照が更新されるようにするには、どうすればよいですか? 最後の質問は、CSS を含めるために次の行を使用する場合、ビルド スクリプトに参照を更新させることはできますか?

    <link rel='stylesheet/css' type='text/css' href='<?PHP echo(CSS_PATH) ?>style.css'/>

編集:build.xmlファイルをいじることで、それが機能するだけでなく、phpエコーも使用できました。build.xml ファイルの 623 行目付近で次の行を変更しました。

    <replaceregexp match="&lt;link rel=['&quot;]?stylesheet['&quot;]?\s+href=['&quot;]?(.*)/${file.root.stylesheet}(?:\?.*)?['&quot;]?\s*&gt;" 
        replace="&lt;link rel='stylesheet' href='\1/${css.sha}.css'&gt;" flags="m">

    <replaceregexp match="href=['&quot;]?(.*\?&gt;)${file.root.stylesheet}(?:\?.*)?['&quot;]?" 
        replace="href='\1${css.sha}.css'" flags="m">

うまくいけば、これは同様の問題を抱えている人に役立ちます。

4

1 に答える 1

0

使用している HTML5Boilerplate のバージョンによっては、.htaccess ファイル内の「組み込みのファイル名ベースのキャッシュ無効化」に関するコメントを削除することで解決できる可能性が高くなります。

HTML5 Boilerplate 4.1のコード セクションを次に示します。

`<IfModule mod_rewrite.c>
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.+)\.(\d+)\.(js|css|png|jpg|gif)$ $1.$3 [L]
 </IfModule>`

build.xml ファイルを編集または再加工することはお勧めできません。

  • .htaccess ファイルを編集する方がはるかに効率的です。
  • HTML5 ボイラープレートの更新とリリースにより、アプリケーションの将来性を保証できないリスクが高まります。
于 2013-03-02T10:32:19.070 に答える