Я добавил локальный модуль разработки (отдельный репозиторий git) в Magento 2, используя символические ссылки, и он работал нормально, пока я не попал в шаблоны PHTML. После тяжелой отладки я обнаружил, что класс файловой системы Magento 2 ( Magento\Framework\Filesystem\Directory\Read
) использует isExists()
метод в сочетании с getAbsolutePath()
вызовом, чтобы проверить, существует ли шаблон PHTML. Тем не менее, getAbsolutePath()
метод проверяет, существует ли относительный путь в файловой системе Magento 2, и если нет, он добавляет к корню Magento 2. Это. В моем случае модуль живет в отдельном репо, в /git/A
то время как Magento живет, /site/B
и это поведение проверяет наличие шаблона PHTML в /site/B/git/A
.
Вкратце: шаблоны PHTML, которые находятся за пределами корневой файловой системы Magento 2, не выбираются, независимо от того, включен ли параметр конфигурации системы «Разрешить символические ссылки». Кажется, что настройка работает, но только если источник символической ссылки все еще находится в файловой системе Magento 2.
Кто-нибудь еще сталкивался с этим? Каков наилучший способ управления разработкой во внешнем git-репо?