Обзор проблемы
В версии 4.7.0 WPML Multilingual & Multicurrency for WooCommerce Вы можете столкнуться с этой ошибкой при посещении страницы товара или страницы, содержащей переключатель валют.
PHP Fatal error: Uncaught LogicException: A function must be an instance of Twig_FunctionInterface or Twig_SimpleFunction. in .../public_html/wp-content/plugins/sitepress-multilingual-cms/lib/twig/src/Environment.php:1119 Stack trace: #0 .../public_html/wp-content/plugins/woocommerce-multilingual/inc/template-classes/class-wcml-templates-factory.php(80): WPMLCoreTwigEnvironment->addFunction(Object(__PHP_Incomplete_Class)) #1 .../public_html/wp-content/plugins/woocommerce-multilingual/inc/template-classes/class-wcml-templates-factory.php(24): WCML_Templates_Factory->maybe_init_twig() #2 .../public_html/wp-content/plugins/woocommerce-multilingual/inc/currencies/currency-switcher/class-wcml-currency-switcher.php(143): WCML_Templates_Factory->get_view() #3 .../public_html/wp-content/plugins/woocommerce-multilingual/inc/currencies/currency in /home/326328.cloudwaysapps.com/mufdqasvkk/public_html/wp-content/plugins/sitepress-multilingual-cms/lib/twig/src/Environment.php on line 1119 [21-Oct-2019 06:34:56 UTC] PHP Fatal error: Uncaught LogicException: A function must be an instance of Twig_FunctionInterface or Twig_SimpleFunction. in .../public_html/wp-content/plugins/sitepress-multilingual-cms/lib/twig/src/Environment.php:1119
Эта проблема вызвана поддержкой шаблонов TWIG, от которой мы постепенно отказываемся, и вскоре наши разработчики её исправят
Обходное решение
Эта проблема решена. Обновление до последней версии решает эту проблему на Вашем сайте, поэтому это обходное решение потребуется Вам только в том случае, если Вы пока не можете выполнить обновление.
Чтобы устранить эту проблему, просто перейдите на вкладку WooCommerceWCMLМультивалютность в админ-панели. При этом из базы данных будет удален неверный параметр, и фатальная ошибка на страницах товаров больше возникать не будет.