Skip Navigation

Resolved

Overview of the issue

Iconv is a PHP module required for some features of WPML. By default, this module is enabled when PHP is installed on a server. However, some hosting providers may disable it.

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

Thus, if you activate WPML and you don’t have the Iconv module activated, you’ll see the following error message:

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

Additionally you might encounter error like this one in 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

Workaround

Our developers are working to resolve this automatically in our upcoming versions of WPML but we recommend you to:

  • Professionally Managed Hosting:
    Contact your hosting provider and request that the PHP Module iconv and the PHP module intl be installed and enabled.
  • Self Managed Hosting:
    Reinstalling, updating or recompiling PHP appears to be the easiest option if the iconv module was never installed.
    Please make sure you do not compile PHP using “–without-iconv”.
  • Install or enable intl PHP module

Once iconv is enabled, you will find the following table in your phpinfo:

Make sure to also enable the PHP module intl