Front end developerzy Magento często stają przed zadaniem nadpisania jakiegoś fragmentu strony tzw. templatki. Istnieje wiele technik odnajdywania właściwej templatki i debugowania szablonu. Jedną z nich są podpowiedzi szablonów (Template hints). Po włączeniu tej opcji konfiguracyjnej na frontendzie sklepu pokazywane są ścieżki do każdej wyrenderowanej templatki.

Podpowiedzi szablonów na frontendzie w Magento 2.3

Podpowiedzi szablonów można włączyć poprzez panel administracyjny (Stores > Settings > Configuration > ADVANCED > Developer), albo poprzez komendy CLI:

bin/magento dev:template-hints:enable
bin/magento dev:template-hints:disable

W Magento 2.3 dodano opcję konfiguracyjną, dzięki której podpowiedzi pokażą się po dodaniu specjalnej flagi w URL sklepu w przeglądarce np.

https://magento2.test/?templatehints=magento

Dzięki temu nie musimy włączać/wyłączać podpowiedzi za każdym razem tylko możemy sterować tym poprzez pole adresu URL w przeglądarce.

Co zrobić aby taki tryb przełączania podpowiedzi szablonów działał? wystarczy w panelu administracyjnym w tym samym miejscu gdzie włącza się template hints zaznaczyć dodatkową opcję Enable Hints for Storefront with URL Parameter.

podpowiedzi szablonów w Magento 2.3

Inne techiki debugowania szablonów

Osobiście bardzo rzadko korzystam z podpowiedzi szablonów. Być może wiąże się to z tym, że mam już duże doświadczenie z frontendem Magento i mniej więcej wiem gdzie czego szukać. Zamiast template hints często po prostu szukam jakiegoś charakterystycznego miejsca w templatce. Zazwyczaj jest to nazwy klasy lub ID i wyszukuję go w kodzie. W każdym razie template hints bywają przydatne szczególnie gdy mamy rozbudowany sklep, gdzie templatki mogą być nadpisywane przez moduły zewnętrzne.

Dodatkowo warto wspomnieć, że podpowiedzi nie dadzą nam zupełnie nic gdy szukamy np. szablonu uiComponentu. W skrócie można powiedzieć, że technika podpowiedzi ścieżek szablonów opisana w tym artykule dotyczy tylko szablonów phtml. Do szablonów UI Componentów należy używać techniki z wyszukiwaniem poprzez klasy/id w HTML. Więcej o tej technice możesz poczytać tutaj.

Podsumowanie

W tym krótkim artykule pokazałem jak w łatwy sposób można włączać/wyłączać template hints w Magento 2.3. Więcej o debugowaniu szablonów znajedziesz w dokumentaci Magento.