WPML
状态
已解决

问题概述

IconvWPML 某些功能所需的一个 PHP 模块。默认情况下,当在服务器上安装 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

  • 自托管主机: 如果从未安装过 iconv 模块,重新安装、更新或重新编译 PHP 似乎是最简单的选项。
    请确保不要使用“–without-iconv”编译 PHP。

  • 安装或启用 intl PHP 模块

启用 iconv 后,您将在 phpinfo 中找到以下表格:

请确保还启用了 PHP 模块 intl

所有已知问题 →