Pergunta

Estou construindo uma Magento 2 módulo para fins de aprendizagem.
Estou tentando adicionar um arquivo css para todos os produtos configuráveis páginas, mas eu estou falhando miseravelmente.

Aqui está o que eu tentei.
No app/code/Namespace/Module/view/frontend/layout Eu adicionada a este ficheiro: 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>

O arquivo de layout é levado em consideração, mas eu recebo o seguinte erro no console

403-Proibido - RAIZ/pub/static/frontend/Magento/branco/en_US/Namespace_Module:css/estilos.css

O arquivo mencionado na mensagem de erro não existe (não gerado), mesmo se o arquivo original eu estou tentando adicionar existe em /app/code/Namespace/Module/view/frontend/web/css/styles.css
Se eu remover o Namespace_Module prefixo do <argument> tag inclui um diferente styles.css.A partir de pub/static/frontend/Magento/blank/en_US/css/styles.css.

O que estou fazendo de errado?

Foi útil?

Solução

Ok.Eu estou um pouco envergonhado.
O problema foi entre meu teclado e a cadeira.
O separador para o módulo de anúncios do nome do arquivo é :: não :.
Eu deveria ser mais cuidadoso.
Então, a maneira correta de fazer isso é.

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

Eu deveria excluir esta pergunta como ele pode emenda off topic.
Mas vou deixá-lo viver como ele pode servir como material de aprendizagem para os outros.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange
scroll top