Я пытаюсь добавить функцию на язык шаблонов Twig, упакованный как часть плагина AlexaCRM WordPress «интеграция-динамика».
Посмотрев код плагина, я думаю, что мне нужно использовать ловушку «wordpresscrm_after_twig_ready», чтобы повесить определение моей функции. Тем не менее, моя функция, кажется, игнорируется Twig (когда я пытаюсь использовать функцию, я получаю сообщение об ошибке).
Может ли кто-нибудь указать мне правильное направление, чтобы понять, что я делаю неправильно? Я очень удобен с WordPress, но я совершенно новичок в Twig. Я думаю, что это правильный подход к определению функции, но я готов попробовать другой метод, если это необходимо. Спасибо!
Крюк выглядит так:
do_action( 'wordpresscrm_after_twig_ready', $twigEnv );
Расположение: /wp-content/plugins/integration-dynamics/src/Shortcode/Twig.php
Мой код выглядит так:
function bespoke_twig ($ twigEnv) { $ urlifyFunction = new \ Twig_SimpleFunction ('urlify', функция ($ string) { return bespoke_urlify ($ string); }); $ twigEnv-> addFunction ($ urlifyFunction); вернуть $ twigEnv; } add_action ('wordpresscrm_after_twig_ready', 'bespoke_twig', 10, 1);
Расположение: functions.php («bespoke_urlify ()» определено в том же файле.)
Ошибка выглядит так:
Ошибка синтаксиса шаблона: неизвестная функция «urlify» в «шаблоне» в строке 1.
Задача ещё не решена.
Других решений пока нет …