В theme
таблице есть type
поле с 3 возможными значениями: физическое, виртуальное и промежуточное.
Когда использовать физическую виртуальную и сценическую тему?
Когда я расширил тему luma, моя новая тема появилась в таблице тем как виртуальный тип. Но похоже, что этот тип не позволяет переопределять некоторые файлы, и только изменение типа темы с виртуальной на физическую позволяет мне расширить, например, Magento_Theme
пакет.
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],];
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 - ?