Редактирование существующей темы - Поиск XML-файла
Извините за вопрос новичка, но я полностью застрял, иначе я бы не спрашивал. Я полон решимости правильно изучить Magento, и мне нужно указать правильное направление, прежде чем я смогу продолжить.
Я редактирую существующую тему, которая была установлена другим разработчиком, я хотел сделать только некоторые CSS, но очевидно, что мне нужно изменить структуру макета.
Пожалуйста, посетите веб-сайт ниже:
Dev.best-brilliance.com/?___store=ebay&___from_store=default
Я изменил логотип, но мне нужно, чтобы он был в середине страницы, как в этом макете ниже:
Согласно руководству Magento, которое я прочитал, я должен быть в состоянии определить местоположение XML-файла, включив подсказки шаблона, однако, похоже, это не так. Вот скриншот страницы с подсказками по шаблону и названию блока включено:
Путь к заголовку интерфейс/ultimo/bb/шаблон/страница/html/заголовок.phtml но это файл PHP. Имя блока mage_page_block_html_header, который, по-видимому, должен быть XML-файлом, но я не могу найти его нигде в своих папках FTP. Там нет ссылки на то, где это находится, и я просмотрел многие папки, чтобы попытаться найти его. Насколько мне известно, как только я открою этот файл, я смогу изменить структура макета и достижение центрального логотипа.
Не мог бы кто-нибудь, пожалуйста, сказать мне, что я здесь делаю/думаю неправильно, и дать мне несколько советов о том, как правильно найти то, что мне нужно? Большое вам спасибо за ваше время.
1 answers
Конечно! Вот пара вещей, которые, я думаю, вы могли бы понять лучше.
Блоки. Блоки являются неотъемлемой частью системы "представления" Magento в шаблоне проектирования MVC, наряду с шаблонами и XML-макетом. Блоки - это классы PHP, которые предоставляют данные и функции визуализации шаблонам. Они заканчиваются на
.php
. Блок не заставляет страницу выглядеть определенным образом (шаблоны и файлы обложек) или указывать Magento, какие шаблоны и блоки включать на страницу (XML-макет); его задача для предоставления данных шаблону и управления шаблоном. Похоже, у вас перепутаны блоки и XML-формат макета.XML-формат макета. XML-формат макета часто является самой сложной частью Magento для понимания новым интерфейсным разработчиком. Кажется, это довольно уникально для Magento; хотя я не совсем уверен в этом, я никогда не слышал об этом в другом месте. XML-формат макета сообщает Magento, какие блоки включать/отображать на определенных страницах. Файлы макета заканчиваются на
.xml
и хранятся в каталоге темыapp/design/[area]/package/theme/layout/
. Расположение XML поначалу довольно сложен. Одна из сложностей заключается в том, что на самом деле он не обеспечивает истинный макет страницы, по крайней мере, так видит пользователь (обычно это делает CSS). Задачи "компоновки", которые он обрабатывает, связаны с определением, какие блоки выводить для каких URL-адресов и в каком порядке (это не имеет большого отношения к порядку, в котором пользователь может видеть их на интерфейсе). Чтобы получить краткое представление о XML-формате макета, прочитайте учебник MageBase по нему ( часть первая находится здесь). Чтобы действительно учиться система компоновки Magento, прочитайте книгу Без излишеств Компоновка Magento всегда потрясающего Алана Шторма.Шаблоны. Они назначаются блоку, который наследует
Mage_Core_Block_Template
, и отображаются, когда система вызывает метод блокаtoHtml()
. Они заканчиваются.phtml
.Файлы кожи. Это интерфейсные ресурсы для темы Magento, такие как JavaScript, CSS и изображения. Они хранятся в каталоге
skin/
. Они обрабатывают форматирование HTML правильно, почти так же, как все остальные CSS в мире :)
Итак, теперь, когда вы немного лучше разбираетесь в основах, как вы можете объединить эти вещи, чтобы решить свою проблему? Ну, во-первых, проблема не в блоке, так как он просто предоставляет данные шаблону. Проблема, скорее всего, на самом деле не в файле макета, так как файл макета, скорее всего, просто говорит Magento, чтобы он выкладывал логотип на каждой странице, а не где его размещать.
Итак, с чем это нас оставляет? Шаблоны и файлы обложек. В вашем конкретном случае шаблон блока, скорее всего, не способствует проблеме, но часто это хорошее место для поиска в подобных проблемах, потому что они содержат фактический HTML, который отправляется пользователю. Я бы предположил, что это связано с некоторыми CSS и может быть исправлено путем изменения стиля этого элемента и других окружающих его элементов (родителей, братьев и сестер).
Несколько других случайных, разных советов, когда вы начнете свое путешествие по интерфейсу Magento:
Подсказки шаблонов и блоков Magento очень мощные. Я не мог себе представить, как много можно сделать с Magento без них, но у них есть один существенный недостаток, заключающийся в том, что они обычно портят структуру отображения страницы из-за добавления всех тех дополнительных элементов, которые не запланированы.
Я предлагаю вам начать пытаться достичь того, чего вы хотите, посмотрев на CSS. Не позволяйте этому отговорить вас от того, чтобы в конце концов взглянуть на шаблон, хотя, и может быть хорошей идеей перезаписать шаблон (в пользовательской теме), чтобы избежать беспорядочного HTML.
Надеюсь, это поможет. Добро пожаловать в сообщество Magento. Если у вас есть какие-либо другие вопросы, не стесняйтесь задавать их в комментариях или открывать другие вопросы.