Основи magento - файли шаблону, sebweo

Виходячи з нашої попередньої статті ми побачили, що файли макета контролюють кожен блок в темі і вирішують, що має, і що не повинно відображатися. Але те, що рендерится всередині цього блоку, - це саме те, коли файли шаблонів вступають в дію.
У цій статті ми будемо концентруватися на наступній папці, яка містить всі необхідні файли шаблонів теми:
А тепер давайте почнемо роботу.
шаблон Magento
Файли шаблону Magento - це файли з розширенням PHTML, що складаються з комбінації HTML і PHP (до речі, шаблон може бути і на чистому HTML). Деякі з них генерують цілі сторінки, такі як 1column.phtml. в той час як інші генерують конкретні блоки в межах сторінки, такі як header.phtml і footer.phtml. Ви можете створювати стільки шаблонів, скільки вам потрібно. Хоча в дефолтной темі маджента є достатня кількість шаблонів, які покривають практично всі завдання для інтернет-магазину.
Практично в кожній темі Magento є десятки файлів шаблону і знати, які з них потрібно редагувати, а також як знайти потрібний файл в ієрархії, - на початку це може бути дуже складним завданням.
Щоб допомогти в цьому і врятувати нас від багатьох годин головного болю, в адмінпанелі є дуже корисний функціонал - Підказки шляху шаблону. Вони швидко визначають, які файли завантажуються для певної сторінки, і показують нам шлях до цих файлів.
Цей параметр видно тільки тоді, коли задіяна область впливу зміни «Сайт» або «Вид Магазину». При поточній області впливу зміни «За замовчуванням», потрібні нам параметри будуть недоступні, тому зверніть на це увагу після входу в систему.

Щоб включити цей функціонал, перейдіть до Система> Конфігурація і перегорніть сторінку до кінця і в меню зліва натисніть кнопку «Для розробника» в секції «Розширені» (Advanced). Після того, як ми змінили область впливу зміни на «Головний сайт», в настройках секції «Усунення неполадок (debug)» стануть доступні додаткові функції.
Виставте навпроти Підказки шляху шаблонів «Так» і збережіть налаштування. Оновлення головну сторінку сайту і ви побачите, що до кожного блоку додані підказки шляху в червоній рамочці, а кордони блоків позначені червоними пунктирними лініями. Межі блоків також можуть дати нам уявлення про те, які блоки є батьківськими, а які дочірніми. Наприклад, з скріншоту нижче можна побачити, що для цієї сторінки батьківським (тобто, основним, який вже всередині містить підключення дочірніх блоків) є шаблон 1column.phtml.
Приблизний вигляд сайту при включених підказках шаблону на скріншоті:

Зверніть увагу, що шлях до файлу шаблону вказано в повному обсязі, в ньому пропущено на початку app / design /.
Тепер, наприклад, якщо ми хочемо змінити шаблон меню сайту, то завдяки підказкам ми знаємо, що його треба шукати в наступному місці:
В даному прикладі ми використовуємо пакет тим healthier, в вашому ж випадку це буде інший шлях.
За допомогою підказок набагато легше знайти потрібні файли. І якщо нам потрібно внести будь-які зміни в кореневі файли, ми можемо їх скопіювати з кореневої теми (base) в свою тему, з дотриманням повного шляху, і вже в своїй темі внести необхідні зміни. Це дасть нам можливість не боятися оновлень движка маджента і наші зміни будуть збережені.
Тепер, перейдемо до практичного прикладу.
Показ Рекомендованих товарів на головній сторінці
Цей функціонал затребуваний майже на всіх інтернет-магазинах, зроблених на Маджента, тому його ми і розглянемо.
Реалізація цього функціоналу насправді набагато простіше, ніж ви можете собі уявити, з поєднанням XML і PHP ми можемо досягти цього в найкоротші терміни. Існує, як і практично в усьому функціонал в Magento, більш ніж один спосіб зробити це. Я покажу вам спосіб, який на мою думку, є найбільш простим.

Для цього ми будемо використовувати шаблон з теми ядра base зі списком товарів, в якому є майже весь необхідний нам код, і нам залишиться зробити лише кілька коригувань.
Ми скопіюємо шаблон з теми ядра
в свою тему і перейменуємо його у
і зробимо деякі зміни в цьому файлі.
І, нарешті, ми повинні створити XML-блок, який буде завантажувати шаблон, створений нами вище. Ми зробимо це в нашому файлі local.xml наприклад так: