Работает ли иерархия шаблонов в magento так же, как дочерние темы в WordPress - PullRequest
5 голосов
/ 30 июня 2011

Я новичок в magento и запутался в темах. Я купил тему и установил ее, и теперь мне нужно внести некоторые изменения.

В WordPress ... (что я привык), что я хотел бы сделать на этом этапе, чтобы сделать дочернюю тему (которая, по сути, один файл CSS с небольшим количеством кода в нем) .... и любые изменения в этой дочерней теме будут переопределять родительскую тему в этой области только , в то время как родительская тема будет регулировать все остальное, преимущество в том, что когда дело доходит до обновления темы, мне не нужно вести «список хаков» и переопределять все мои модификации.

Однако люди, которые продали мне тему, не упоминают ничего подобного и предлагают просто отредактировать саму тему, несмотря на то, что у magento есть «иерархия тем»

Так может кто-нибудь объяснить мне, работает ли иерархия шаблонов в magento так же, как дочерние темы в WordPress ... и если нет, то какова процедура обновления темы с учетом изменений, внесенных сайтом? разработчик из оригинальной скачанной версии

1 Ответ

17 голосов
/ 30 июня 2011

Работает ли иерархия шаблонов в magento так же, как дочерние темы в WordPress

номер

какова процедура обновления темы с учетом изменений, внесенных разработчиком сайта по сравнению с исходной загруженной версией

Начиная снизу, у Magento (пост 1.4.1.1) есть папка темы в

app/design/frontend/base/default

Это окончательное место, где Magento будет искать любой конкретный файл шаблона. Только люди, которые знают, почему они хотят редактировать / добавлять файлы, должны редактировать или добавлять файлы там. И даже большинство из них не должны.

Далее (и это сбивает с толку, поэтому будьте внимательны, и не расстраивайтесь, если вы запутались), у Magento есть концепция по умолчанию . Это имя темы, которое вы настраиваете в

System -> Configuration -> Design -> Themes -> Default Theme

В этой папке по умолчанию вы можете поместить свою базовую тему. Если вы ввели значение theirtheme, Magento будет искать шаблоны тем и файлы макетов в

app/design/frontend/default/theirtheme/template
app/design/frontend/default/theirtheme/layout

Далее, темы состоят из

  • Макет XML-файлов
  • Шаблоны
  • Перевод файлов
  • Файлы скинов (которые находятся вне иерархии приложения / дизайна)

Каждый из них имеет область конфигурации в

System -> Configuration -> Design -> Themes

Итак, допустим, вы сконфигурировали значение конфигурации Templates со значением mytheme, а ваше Default было установлено, как указано выше, на theirtheme. Сначала Magento будет искать файлы шаблонов phtml в

app/design/frontend/default/mytheme/template/path/to/file.phtml

Если он там не найден, он будет смотреть на настроенную вами тему по умолчанию

app/design/frontend/default/theirtheme/template/path/to/file.phtml

Наконец, если он не нашел ни одного из них, он проверяет последний раз в

app/design/frontend/base/default/template/path/to/file.phtml

Похоже, что вы хотите сделать тему, которую вы скачали, темой по умолчанию, а затем настроить пользовательские папки, в которые вы можете добавлять свои изменения.

Другие заметки

Слово frontend в

app/design/frontend

- это область . Область примерно соответствует одному веб-приложению. Область внешнего интерфейса представляет собой корзину для покупок, область adminhtml представляет собой консоль администратора.

Первый default в

app/design/frontend/default

- это папка Design Package . Дизайнерский пакет - это коллекция тем. Это часто приводит к путанице, поскольку пакет по умолчанию не имеет ничего общего с темой по умолчанию, но у них одно и то же имя по умолчанию.

Наконец, не говоря о том, что сказал вам ваш поставщик тем, Magento по-прежнему является молодой платформой, и она постоянно развивается, и лучшие практики для такого рода вещей все еще разбираются. Часто вам решать, как наилучшим образом использовать различные системы Magento.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...