Перейти к содержанию
KonstantinSednenkov

Дедупликация повторяющегося кода в .tpl шаблонах

Рекомендуемые сообщения

На сайте имеются разные шаблоны для разных страниц, например:

 

/catalog/view/theme/default/template/product/search.tpl

/catalog/view/theme/default/template/product/category.tpl

/catalog/view/theme/default/template/product/manufacturer_info.tpl

 

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

 

Вопрос в следующем: каков правильный, каноничный подход к утилизации/дедупликации таких блоков? Я мог бы, к примеру, создать /catalog/view/theme/default/template/product/breadcrumbs.tpl и require'ить его прямо из search.tpl, category.tpl и т.д., но ни разу не видел, чтобы в темах было так сделано, да и подозреваю, что такой подход быстро превратит кодобазу в помойку вроде битрикса. В связи с этим вопрос - как это делать правильно/приемлемо?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
47 минут назад, KonstantinSednenkov сказал:

такой подход быстро превратит кодобазу в помойку

Тут проблема больше в том, что вы утратите совместимость с модулями/модификациями, поэтому вы такое вряд ли увидите в темах (ну, в тех, где разработчик думает не только о себе) и поэтому надо просто смириться и принимать существующую избыточность кода как данность

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
30 минут назад, RGB сказал:

проблема больше в том, что вы утратите совместимость с модулями/модификациями

так точно

 

впечатление, что когда начинают делать новую ветку, берут за основу код от старой

а когда приходит мысль унифицировать/изменить что-то - все, уже поздняк метаться :ugeek:

 

потому все и тянется из версии к версии

 

1 час назад, KonstantinSednenkov сказал:

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

используйте групповую обработку файлов через модификаторы

только помните про нюансы

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
3 часа назад, RGB сказал:

Тут проблема больше в том, что вы утратите совместимость с модулями/модификациями

А если речь идёт об уже утратившем совместимость коде?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.