Magento2のheadブロックにcssファイルを追加するにはどうすればよいですか[閉じました]

magento.stackexchange https://magento.stackexchange.com//questions/34272

  •  12-12-2019
  •  | 
  •  

質問

私は学習目的のためにMagento2モジュールを構築しています。
私はすべての設定可能な製品ページにcssファイルを追加しようとしていますが、私は惨めに失敗しています。

これが私が試したことです。
app/code/Namespace/Module/view/frontend/layout 私はこのファイルを追加しました: catalog_product_view_type_configurable.xml

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../Magento/Core/etc/page.xsd">
    <referenceBlock name="head">
        <block class="Magento\Theme\Block\Html\Head\Css" name="namespace-module-css">
            <arguments>
                <argument name="file" xsi:type="string">Namespace_Module:css/styles.css</argument>
            </arguments>
        </block>
    </referenceBlock>
</page>

レイアウトファイルは考慮されますが、コンソールに次のエラーが表示されます

403Forbidden-ROOT/pub/static/frontend/Magento/blank/en_us/Namespace_Module:css/styles.css

追加しようとしている元のファイルが存在していても、エラーメッセージに記載されているファイルは存在しません(生成されません)。 /app/code/Namespace/Module/view/frontend/web/css/styles.css
私が削除した場合 Namespace_Module からの接頭辞 <argument> タグには異なるものが含まれています styles.css.からのもの pub/static/frontend/Magento/blank/en_US/css/styles.css.

私は何が間違っているのですか?

役に立ちましたか?

解決

わかった私は少し恥ずかしいです。
問題は私のキーボードと私の椅子の間でした。
モジュール名adファイルの区切り文字は次のとおりです :: ない :.
もっと気をつけた方がいい
したがって、それを行う正しい方法は次のとおりです。

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../Magento/Core/etc/page.xsd">
    <referenceBlock name="head">
        <block class="Magento\Theme\Block\Html\Head\Css" name="namespace-module-css">
            <arguments>
                <argument name="file" xsi:type="string">Namespace_Module::css/styles.css</argument>
            </arguments>
        </block>
    </referenceBlock>
</page>

私はこの質問を削除する必要があります。
しかし、私はそれが他の人のための学習教材として役立つかもしれないので、それを生きさせます。

ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top