WPML
Статус
Решено

Обзор проблемы

Iconv — это модуль PHP, необходимый для некоторых функций WPML. По умолчанию этот модуль включен, когда PHP установлен на сервере. Однако некоторые хостинг-провайдеры могут его отключить.

https://www.php.net/manual/en/book.iconv.php

Таким образом, если Вы активируете WPML, а модуль Iconv не активирован, Вы увидите следующее сообщение об ошибке:

Fatal error: Uncaught Error: Call to undefined function SymfonyPolyfillMbstringiconv() in .../wp-content/plugins/sitepress-multilingual-cms/vendor/symfony/polyfill-mbstring/Mbstring.php:409

Кроме того, Вы можете столкнуться с подобной ошибкой в WPML 4.3.16

Fatal error: Uncaught Error: Class 'Normalizer' not found in .../wp-content/plugins/sitepress-multilingual-cms/vendor/symfony/polyfill-iconv/Iconv.php:689

Обходное решение

Наши разработчики работают над тем, чтобы решить эту проблему автоматически в следующих версиях WPML, но мы рекомендуем Вам:


  • Хостинг с профессиональным управлением: Свяжитесь с Вашим хостинг-провайдером и попросите установить и включить модуль PHP iconv и модуль PHP intl.

  • Хостинг с самостоятельным управлением: Переустановка, обновление или перекомпиляция PHP представляется самым простым вариантом, если модуль iconv никогда не был установлен.
    Пожалуйста, убедитесь, что Вы не компилируете PHP с параметром «–without-iconv».

  • Установите или включите модуль PHP intl

Как только iconv будет включен, Вы найдете следующую таблицу в Вашем phpinfo:

Обязательно также включите модуль PHP intl

Все известные проблемы →