Como adicionar classe css no corpo [Magento2]

19

Estou tentando adicionar uma classe css na tag body, mas não consigo encontrar nenhum arquivo, de onde a tag body é renderizada.

Eu preciso adicionar uma classe css na tag body, como outras estão chegando> page-with-filter page-products page-layout-2columns-left myclasshere

na versão anterior abaixo estava o código xml para adicionar classe ao corpo.

<reference name="root">
    <action method="addBodyClass">
        <classname>my-profile</classname>
    </action>
</reference>

Eu tentei usar isso, mas não funcionou.

Eu preciso adicionar uma classe page-layout-2columns-leftapenas com modelo.

Jack
fonte

Respostas:

43

No seu layout ou arquivo de modelo, você precisa adicionar um atributo à tag body, assim:

<body>
    <attribute name="class" value="my-css-class"/>
    ...

Espero que ajude

Dave Farthing
fonte
Graças Dave, agora está aparecendo em todas as páginas, eu só quero esta classe que tem layout do layout de página-2columns-esquerda
Jack
Não é possível pensar em uma maneira de conseguir isso facilmente com o layout sozinho, além de segmentar cada identificador de página que usa 2 colunas à esquerda como layout, da mesma forma que M1.
Dave Farthing
11
Eu só estava pensando em adicionar as mesmas linhas em 2-column-left.xml, então isso terá como alvo apenas esse layout, mas não está funcionando.
Jack
Acabei de adicionar o mesmo em category.xml e funcionou, graças :)
Jack
como adicionar apenas para o usuário de login?
Sunil Patel
0

Caso você queira adicionar uma variável dinâmica, por exemplo. Código de loja para a classe body, você pode dar uma olhada no seguinte exemplo que fiz: https://github.com/samgranger/StoreCodeBodyClass

Sam Granger
fonte