Frage

Ich baue zu Lernzwecken ein Magento 2-Modul.
Ich versuche, allen konfigurierbaren Produktseiten eine CSS-Datei hinzuzufügen, aber das scheitert kläglich.

Hier ist, was ich versucht habe.
In app/code/Namespace/Module/view/frontend/layout Ich habe diese Datei hinzugefügt: 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>

Die Layoutdatei wird berücksichtigt, aber ich erhalte in der Konsole die folgende Fehlermeldung

403 Verboten – ROOT/pub/static/frontend/Magento/blank/en_US/Namespace_Module:css/styles.css

Die in der Fehlermeldung erwähnte Datei existiert nicht (sie wird nicht generiert), selbst wenn die Originaldatei, die ich hinzufügen möchte, vorhanden ist /app/code/Namespace/Module/view/frontend/web/css/styles.css
Wenn ich das entferne Namespace_Module Präfix aus dem <argument> Tag enthält es ein anderes styles.css.Der von pub/static/frontend/Magento/blank/en_US/css/styles.css.

Was mache ich falsch?

War es hilfreich?

Lösung

OK.Es ist mir ein wenig peinlich.
Das Problem lag zwischen meiner Tastatur und meinem Stuhl.
Das Trennzeichen für den Modulnamen der Ad-Datei lautet :: nicht :.
Ich sollte vorsichtiger sein.
Der richtige Weg, es zu tun, ist also.

<?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>

Ich sollte diese Frage löschen, da sie möglicherweise vom Thema abweicht.
Aber ich werde es am Leben lassen, da es anderen als Lernmaterial dienen kann.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top