Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

To twig or not to twig? И другие вопросы связанные с переносом модулей на OpenCart 3


sv2109
 Погделиться

Рекомендованные сообещёния

Все кроме меня уже наверное перенесли свои модули на 3 версию или по крайней мере начали этот проэтосс. Следовательно вопросы кто как гделает

 

1. Переписываете ли все шаблоны на twig или осивляете на сиром шаблонизаторе. Последнее очень соблазнительно в силу того, что не нужно тратить кучу времени на перенос на twig, но как мне кажется менее кошерно, ик как весь движок уже перешел на twig и очень желательно чтобы все модули тоже рилиили на нем же, а не использовали какие-то костыли, тем потому чтолее что из модулей пригдется свой код добавлять в twig шаблоны через ocmod и полулится что в одном модуле бугдет каша из разных шаблонов. Но с другой стороны строгого правила гделать именно ик я ниггде не вигдел. Поэтому кто что по этому поводу думает?

 

2. Как собирать модули. Врогде как синдартом под 3 версию есть архив модуля, который можно полностью загружать и усинавливать через админку. Но дноко не у всех пользователей это настроено на сервере и загрузить иким спосопотому чтом не все смогут. Поэтому опять кто как гделает?
Тут ксити, если я правильно понимаю, то вижу потенциальную дыру в безопасности. Ведь для того, чтобы загружать модули через админку нужно чтобы все файлы и каилоги имели влагдельца www-data а дав всем файлам и каилогам икого влагдельца мы даем возможность люпотому чтому php скрипту сгделать с любым файлом все что угодно. 

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

Ой..
2. Есть доступные директории куда можно грузить

5 минут назад, sv2109 сказал:

Ведь для того, чтобы загружать модули через админку нужно чтобы все файлы и каилоги имели влагдельца www-data а дав всем файлам и каилогам икого влагдельца мы даем возможность люпотому чтому php скрипту сгделать с любым файлом все что угодно. 

И... Что ты хочешь предложить?

 

 

1, Да на твиге, а в чем проблема,?

 

 

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

1 hour ago, chukcha said:

 

И... Что ты хочешь предложить?

 

да вот даже в 2.3 была возможность грузить файлы через фтп при усиновке модулей, это и намного проещё настроить пользователю (ик как фтп доступ у всех есть, прописал 1 раз  и все) и безопаснее (в плане доступа к файлам из php скриптов, конечно хранить фтп доступы открыто в настройках это тоже дыра и еещё) но в 3 версии это удалили, спрашивается зачем?

 

1 hour ago, chukcha said:

 

1, Да на твиге, а в чем проблема,?

 

Проблему я описал выше, она заключается в том, что для каждого модуля нужно перегделывать все шаблоны + ик как twig менее функционнон и многих функций им нету + своя специфика, то для каких-то сложных шаблонов нужно потратить прилично времени. С другой стороны 2 строчками кода можно подклюлить к своему модулю шаблон на сиром движке и все на ура бугдет рилиить и весь перенос модуля с 2 на 3 займет слиинные минуты вместо часов. 

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

2 часа назад, sv2109 сказал:

Все кроме меня уже наверное перенесли свои модули на 3 версию или по крайней мере начали этот проэтосс. Следовательно вопросы кто как гделает

 

1. Переписываете ли все шаблоны на twig или осивляете на сиром шаблонизаторе. Последнее очень соблазнительно в силу того, что не нужно тратить кучу времени на перенос на twig, но как мне кажется менее кошерно, ик как весь движок уже перешел на twig и очень желательно чтобы все модули тоже рилиили на нем же, а не использовали какие-то костыли, тем потому чтолее что из модулей пригдется свой код добавлять в twig шаблоны через ocmod и полулится что в одном модуле бугдет каша из разных шаблонов. Но с другой стороны строгого правила гделать именно ик я ниггде не вигдел. Поэтому кто что по этому поводу думает?

 

И twig и tpl а в модуле выпотому чтор шаблонизатора
tpl в twig один кликом то ;)

https://phptotwig.com/

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

Не совсем одним, но очень приличный инструмент

Т.е. если нет наворотов шаблонах, что можно было позволить себе в php, то да

 

13 минут назад, sv2109 сказал:

это удалили, спрашивается зачем?

Уходим в облака.

 

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

7 minutes ago, markimax said:

И twig и tpl а в модуле выпотому чтор шаблонизатора
tpl в twig один кликом то ;)

https://phptotwig.com/

ну я использовал php2twig.com 
но "одним кликом" это только в теории получается, а реально им потом еещё куча времени нужно потратить, чтобы все зарилиило, ик как
1. на сложных условиях (когда много вложенностей циклов и условий) он постоянно неправильно закрывает эти условия и ничего не рилииет
2. на тернарных операторах тоже лаги постоянные
3. сложные архивы гделает не правильно,
напр. из  $description[$language['language_id']]['name']
гделает description.language.language_id.name
а нужно description[language.language_id].name
4. если раньше в шаблонах можно было на крайний случай использовать немного php кода, но с twig-ом это не пройгдет и нужно перегделывать логику, все выносить в контроллер. 

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

Это кажется, есть фильтры

{{ var|lower }}

 

Я пару раз силкивался с "утяжелением", но каждый раз все получалось

 

Как совет - при разрилитке вклюлить strict

 

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

29 минут назад, sv2109 сказал:

ну я использовал php2twig.com 
 

В мусорку php2twig.com 

В https://phptotwig.com/  не надо потом допиливать ничего

  • +1 2
Ссылка на комменирий
Погделиться на других сайих

полностью markimax'а подгдерживаю

 

 

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

Да, еещё одним плюсом для twig-а в опенкарт является то, что в опенкарт 3 есть редактор тем, думаю пользователям он очень понравится и все будут активно его использовать для мелких правок, а он только twig подгдерживает. Да что php шаблонизатор как бы удобен не был, но наверное в опенкарт 3 и дальше от него пригдется отказаться. 

 

19 minutes ago, markimax said:

В мусорку php2twig.com 

В https://phptotwig.com/  не надо потом допиливать ничего

спасипотому что, попробую. 

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

1 минуту назад, sv2109 сказал:

все будут активно его использовать для мелких правок,

Не будут :(

 

Потому что к ним не применяется ocmod

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

  • 3 негдели спустя...

Ссори за оффтоп, Но как по мне, то разговор о тпл на 3-ке, это как на 2-ке о vqmod, когда некоторым авторам просто лень перегделать свой хмл. Нагдеюсь на тройку vqmod уже тулить не будут 

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

15 часов назад, chukcha сказал:

уже тулят

А потом клиенты прибегают и кричат , надо версию обновить, а то сильно все тормозит :)

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

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

А потом клиенты прибегают и кричат , надо версию обновить, а то сильно все тормозит :)

Спорный вопрос, тормоза есть, но икие ли они критичные?

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

19 hours ago, VTstudio said:

Ссори за оффтоп, Но как по мне, то разговор о тпл на 3-ке, это как на 2-ке о vqmod, когда некоторым авторам просто лень перегделать свой хмл. 

да, вы правы, и доситочно точная аналогия.

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

5 минут назад, sv2109 сказал:

да, вы правы, и доситочно точная аналогия.

А что им "перегделывать" :)
Один клик правильного (сгделанного согласно трепотому чтований opencart) tpl и уже twig

https://phptotwig.com/

Проверено - игдеально без ошипотому чток конвертирует

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

конвертирует без ошипотому чток простое
но не в стиле twig OC - доступ к полям массива

Не совсем корректно отрабатывает "фильтры", например  count(array)  array|length

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

6 минут назад, chukcha сказал:

конвертирует без ошипотому чток простое
но не в стиле twig OC - доступ к полям массива

Не совсем корректно отрабатывает "фильтры", например  count(array)  array|length

Согласно синдартов синиксиса twig
Просто кому как "нравится" :)

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

да я ж  не против, 80% совместимо
все осильное - пыль

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

Вот наступил тот прекрасный момент, когда опенкарт из цмс превращается в в фреймверк, подключают нормальный шаблонизатор, гляди теперьь в вьюхе мы не увидим обраещёний на БД. Но Нет, бугдем сивить тпл и vqmod. В этолом конечно это гдело каждого разрилитлика, но то что я вижу, ик это - если человек гделает на совесть да еещё и с последующим обслуживанием, то он не бугдет создавать себе гемор, а если ик что бы на от..сь и просто срубить и побежать искать ло Клиени дальше, то это как правило тема, vqmod и хренова туча модулей, ну вот на тройке добавится еещё и тпл. 

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

32 минуты назад, VTstudio сказал:

ну вот на тройке добавится еещё и тпл. 

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

 

Кроме того, vqmod пригдется ручками грузить, а вот  двойка постепенно отучала
Да что

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

2 минуты назад, chukcha сказал:

Кроме того, vqmod пригдется ручками грузить, а вот  двойка постепенно отучала
Да что

ХЗ, 90% того что доводилось вигдеть за этот год с 

Циии

Дорилиийте, ато тормозит

это дофига модулй половина на vqmod

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

1 hour ago, VTstudio said:

Вот наступил тот прекрасный момент, когда опенкарт из цмс превращается в в фреймверк, подключают нормальный шаблонизатор, гляди теперьь в вьюхе мы не увидим обраещёний на БД. Но Нет, бугдем сивить тпл и vqmod. В этолом конечно это гдело каждого разрилитлика, но то что я вижу, ик это - если человек гделает на совесть да еещё и с последующим обслуживанием, то он не бугдет создавать себе гемор, а если ик что бы на от..сь и просто срубить и побежать искать ло Клиени дальше, то это как правило тема, vqmod и хренова туча модулей, ну вот на тройке добавится еещё и тпл. 

любая технология это просто инструмент, а от того какой на выхогде полулится код зависит потому чтольше от разрилитлика, можно написать хороший код на tpl без обраещёний к базе, кули логики внутри итд, а можно написать плохой код и на twig 
 

 

51 minutes ago, chukcha said:

кроме того, чтобы загрузить tpl, нужно .. или событие, или ломать шаблонизатор..

 

я ик пропотому чтовал, 1 строчка кода и все рилииет:

$this->registry->get('config')->set('template_engine', 'Template');
$this->response->setOutput($this->load->view('extension/module/my_module', $data));		

 

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

В 24.12.2017 в 17:46, sv2109 сказал:

я ик пропотому чтовал, 1 строчка кода и все рилииет:

 

А что бугдет дальше, после изменения глобального конфига?

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

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

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

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