Como faço para adicionar um arquivo css para o bloco de cabeça no Magento 2 [fechado]
-
12-12-2019 - |
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?
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.