Na theme
tabela, há um type
campo com 3 valores possíveis: físico, virtual e intermediário.
Quando usar o tema virtual virtual e de preparação?
Quando estendi o tema luma, meu novo tema aparece na tabela de temas como tipo virtual. Mas parece que esse tipo não permite substituir alguns arquivos, e apenas alterar o tipo de tema de virtual para físico me permite estender, por exemplo, o Magento_Theme
pacote.
0: Physical - Magento Default Theme (Example: Magento Blank, Magento Luma, Magento 2 Backend) 1: Virtual - Custom Theme which is created by you (custom) which has parent as Default Theme (Example: My Theme) 2: Staging - ?
vendor\magento\module-theme\Model\Theme\Registration.php
/** Allowed sequence relation by type, array(parent theme, child theme) * @var array */ protected $_allowedRelations = [ [ThemeInterface::TYPE_PHYSICAL, ThemeInterface::TYPE_VIRTUAL], [ThemeInterface::TYPE_VIRTUAL, ThemeInterface::TYPE_STAGING],]; /** Forbidden sequence relation by type ** @var array*/ protected $_forbiddenRelations = [[ThemeInterface::TYPE_VIRTUAL, ThemeInterface::TYPE_VIRTUAL],[ThemeInterface::TYPE_PHYSICAL, ThemeInterface::TYPE_STAGING],];
Respostas:
Existem 3 tipos diferentes definidos em
Magento/Framework/View/Design/ThemeInterface
:Temas físicos
Físico refere-se ao fato de que esses temas são definidos por arquivos. Por exemplo, os temas em branco e luma são fisicamente definidos em
app/design/frontend/
Temas virtuais
Isso ainda não está claro, mas acho que os temas virtuais se referem aos temas que você pode criar no back-end, que estende os temas físicos existentes, mas parece que ainda não foi totalmente implementado.
Você pode ver que há duas guias disponíveis na seção de edição apenas para temas virtuais, que permitem fornecer CSS e JS personalizados para um tema virtual.
Eu acho que um tema virtual seria algo que você configurou temporariamente (como o tema do Natal) por um curto período de tema e que requer apenas poucas alterações de design em comparação com o tema físico que ele estende.
Ainda não existe um botão Adicionar tema virtual, mas se você executar a seguinte consulta SQL, poderá configurar um tema virtual e verá a guia CSS e JS ao editá-lo:
E aqui está, duas guias extras e os botões Salvar / Excluir:
Temas de preparação
Eu acho que os temas de preparação estão relacionados ao recurso de preparação do Magento 2.1 EE: http://devdocs.magento.com/guides/v2.1/extension-dev-guide/staging/Staging.html
Presumo que você possa ter um tema de preparação ao usar uma campanha, mas não tenho 100% de certeza.
fonte
type
coluna datheme
tabela: criei um tema e, de alguma forma, otype
valor foi definido como1
(em vez do padrão0
). Todas as minhas alterações LESS / JS funcionaram, mas o Magento não leu nenhum arquivo de layout do meu tema até que eu alterasse otype
valor para0
. Mais sobre isso aqui: nahuelsanchez.com/…