Widzę wiele plików phtml generowanych var/view_preprocessed/html
z modułów podstawowych, a także z modułów niestandardowych. Wygląda na to, że są to wszystkie używane szablony z rozłożonymi białymi spacjami.
Alan Kent napisał w Jak zaktualizować pliki phtml Magento 2 w Grunt? :
Nie „wdrażasz” plików PHTML. Są one przywoływane przez bloki w plikach układu i przetwarzane po stronie serwera. Tak więc „chrząknięcie” nie ma tutaj znaczenia, podobnie jak statyczne wdrażanie treści nie jest istotne.
Analizując statyczne wdrażanie treści i przepływ pracy, nie znalazłem nic związanego z szablonami, więc chyba nadal tak jest.
Ale kiedy te pliki są generowane? A co się tam właściwie dzieje i dlaczego?
magento2
template
code-generation
magento-2.0.2
Fabian Schmengler
źródło
źródło
Odpowiedzi:
Podczas dzwonienia
bin/magento static-content:deploy
zostaje to wywołane:\Magento\Deploy\Console\Command\DeployStaticContentCommand::execute()
Ta metoda wywołuje
co przekłada się na
\Magento\Deploy\Model\Deployer::deploy
. Na dole tej metody znajdzieszJeśli chcesz, możesz zagłębić się głębiej,
\Magento\Framework\App\Utility::getPhtmlFiles
aby zobaczyć, w jaki sposób szablony są pobierane.Krótka wersja:
To nazywa
accumulateModuleTemplateFiles
iaccumulateThemeTemplateFiles
od tej samej klasy. Metody te używają (na końcu)glob
i niektórych wyrażeń regularnych do pobierania wszystkich plików szablonów z modułów i motywów, a minimalizowanie odbywa się\Magento\Framework\View\Template\Html\Minifier
(implementuje\Magento\Framework\View\Template\Html\MinifierInterface
) w oparciu o dziwne wyrażenia regularne. (patrzminify
metoda).Nie wiem jeszcze, jak ładowane są te szablony. najprawdopodobniej są one ładowane przez silnik szablonów. Prześlę tutaj, jeśli / kiedy to znajdę.
[EDYCJA]
Znalazłem, kiedy używane są zminimalizowane szablony. Po ustawieniu wartości dla
Store->Configuration->Developer->Template Settings->Minify HTML
celuYes
i kiedy na trybie produkcyjnym.źródło
Store->Configuration->Developer->Template Settings->Minify HTML
Przekonałem się, że wciąż nie ładuje Minified HTML. Czy jest coś, co może to blokować? Czy to działa tylko w trybie produkcyjnym?