Dodałem lokalny moduł programistyczny (osobne repozytorium git) do Magento 2 za pomocą dowiązań symbolicznych i działał dobrze, dopóki nie trafiłem na szablony PHTML. Po intensywnym debugowaniu dowiedziałem się, że klasa systemu plików Magento 2 ( Magento\Framework\Filesystem\Directory\Read
) używa isExists()
metody połączonej z getAbsolutePath()
wywołaniem, aby sprawdzić, czy istnieje szablon PHTML. Jednak getAbsolutePath()
metoda sprawdza, czy ścieżka względna istnieje w systemie plików Magento 2, a jeśli nie, zastępuje katalog główny Magento 2. to. W moim przypadku moduł żyje w osobnym repozytorium, /git/A
podczas gdy Magento żyje, /site/B
a to zachowanie sprawdza obecność szablonu PHTML w /site/B/git/A
.
Krótko mówiąc: szablony PHTML, które działają poza głównym systemem plików Magento 2, nie są pobierane, niezależnie od tego, czy włączone jest ustawienie konfiguracji systemu „Zezwalaj na dowiązania symboliczne”. Wygląda na to, że ustawienie działa, ale tylko wtedy, gdy źródło dowiązania symbolicznego nadal znajduje się w systemie plików Magento 2.
Czy ktoś jeszcze tego doświadczył? Jaki byłby najlepszy sposób obsługi rozwoju w zewnętrznym repozytorium git?