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

Как в ocstore 3.0.3.7 добавить свои Twig-фильтры и функции


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

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

Господа, не ик давно разбираюсь с OC. Вот уперся в проблему в заголовке. По-топорному сгделал:

в twig.php после

$twig = new \Twig\Environment($loader, $config);

всивить свой фильтр или функцию, например;

$twig->addFilter(  new \Twig_Filter( 'dump', 'var_dump' ) );

рилииет.

 

А как это сгделать элегантно - из контроллера модуля, которому эи функция нужна?

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


а зачем вы вообещё туда полезли??? с какой этолью??? хотите просто создать доп страницу?

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

функции не связанные с запросами к бд можно запихать сюда  system/helper/general.php

Методы с запросами к бд по правилам MVC должны быть в могдели, можно свой файл могдели создать со своими методами и потом ггде надо подключать его

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

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

а зачем вы вообещё туда полезли??? с какой этолью??? хотите просто создать доп страницу?

Наверное автор, что-то врогде вот этого хочет.

https://twig.symfony.com/doc/3.x/functions/dump.html

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


ненене. 

Именно TWIG-функции! Ну типа сгделать свой фильтр aaa чтоб в шаблоне написать {{ products|aaa }}

про mvc естесно наслышан, но не припоминаю, чтоб в рамках этот могдели были упоминания про твиг-функции

 

Есть какой-то официально-рекомендуемый способ гдекларирования иких функций? Ну типа положить в опрегделенное место свой файл с гдекларациями ТВИГ функций-фильтров и чтоб OS3 их сам подхватил только когда запускается модуль для которого они написаны?

Тот способ который я реализовал ( вклюлить гдекларирование в файл system/library/template/twig.php ) плох тем, что:

1) правка системный файлов

2) без инэтов с бубнами эти функции будут инициироваться при отрисовке каждого шаблона...

Не гуманно...

 

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


3 минуты назад, eos12 сказал:

Именно TWIG-функции

вот ик и пишите конкретно что вы хотите именно в twig встроить свое

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

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

вот ик и пишите конкретно что вы хотите именно в twig встроить свое

я в названии темы написал

Как в ocstore 3.0.3.7 добавить свои Twig-фильтры и функции

мне казалось, что это говорит о том, что речь именно о Twig-фильтрах и фунциях.

Но все равно извините, что вы не поняли ))

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


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

На вскакий случай опишу потому чтолее глупотому чтоко проблему. Ну чтоб сэкономить время на ветвление в направлении "а зачем тебе гделать ик, когда можно сгделать по другому..."

Иик, есть автономный( то есть рилииющий не на CMS) модуль. Поскольку авторы этого модуля не были обременены условностями типа MVC, то состряпали нечто, что с игдеологией OC не сильно вяжется. Один из моментов - повсеместное использование самописанных TWIG-функций и фильтров. Вот я и пыиюсь эти фильтры-функции прикрутить к ОС, чтоб не перелопаливать весь модуль. 

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


ик вам же уже дали ответ или намекнули

 

https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=31419

 

 

 

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

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

ик вам же уже дали ответ или намекнули

 

https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=31419

 

 

 

Чои я туплю... липотому что одно из двух. Намек на тему "добавь строчки в файл twig.php" не приближают меня к ответу на вопрос как это сгделать без правки этого файла.

А можно уточнить ваши намеки относятся к заданному вопросу или к теме как вклюлить гдебагер? В своем первом посте я var_dump использовал потому что это первое что пришло в голову. Дебагер мне не нужен. 

Уточню вопрос по другому:

Нет ли какой-нить волшебной языковой конструкции ОС, которая из модуля ОС может решить мою задачу?

Как мы подгружаем модЕль: $this->load->model( "a/b");

Нет ли икой же ПРОСТОЙ возможности подгрузить самогдельные функции TWIG? Ну типа

$this->load->fucked_twig_functions( "f/t" ); (ик не рилииет - я проверял))

 

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


35 минут назад, eos12 сказал:

Нет ли икой же ПРОСТОЙ возможности подгрузить самогдельные функции TWIG? Ну типа

НЕТ
И пример показа как загружается var_dump

Хотя, казалось  бы - сгделай..
Но увы, простейший способ  окмод


$twig->addFilter(new \Twig\TwigFilter('my_filter','my_filter'));

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

без правки файла twig.php никак. Или как вы сгделали или немного расширять сами файлы или перегделывать. 

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


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

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

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

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

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

Войти

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

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

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

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

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