为了运行,WPML要求如下:

  • WordPress 3.9 或以上版本
  • 推荐PHP 5.6 及以上版本,内存至少128MB(参见WP内存设置)。 记住,您网站所需的内存取决于您的内容、主题和所有插件。
  • MySQL 5.6 及以上版本。
  • 您可以在数据库中创建表。
  • Multibyte String 扩展,便于使用WPML字符串翻译
  • SimpleXML extension ,以便在WPML翻译管理中使用 XLIFF文件
  • eval() PHP 函数必须启用。 有关这方面的更多信息,请参见关于eval()的部分

使用早期版本的PHP和MySQL

WPML可以运行在早期版本的PHP和MySQL上,但是我们无法测试。 如果您正在使用早期版本,我们强烈建议启用WPML的调试模式。 这将显示任何PHP错误,未按照应有的方式运行时会通知您。

关于兼容其他版本使用WPML,请随意在这里评论。

如何检查实际正在使用的PHP版本

一些共享主机公司同时安装了PHP4和PHP5。 检查实际使用版本的最佳方式是询问PHP处理器本身(而不是主机公司的技术人员)。

创建一个名为php_info.php的文件,并将其放在WordPress目录中(就在wp-config.php旁边)。 该文件应包含以下内容:

<?php phpinfo(); ?>

没有大问题了, 对吗? 如果需要,欢迎您以ZIP文件的形式下载。 获取php_info.zip(当然,在上载到服务器之前需要解压)。

在那里,打开浏览器后前往:http://yourdomain.com/php_info.php

应显示以下内容:

php-info.php显示服务器上的PHP版本
php-info.php显示服务器上的PHP版本

在顶部会显示运行的是哪个版本的PHP。 若显示PHP Version 4,就不会运行。 最好的办法是给您的托管公司发邮件,询问他们如何启用PHP 5或更高版本。

永久链接结构

WPML将语言信息添加到URL。 它已经通过以下永久链接结构进行了测试:

  • 默认
  • /%year%/%monthnum%/%postname%/

说明:

其他永久链接结构也可以工作运行,但在不同的配置上可能会导致问题。 在我们所有的网站上,我们都在使用 /%year%/%monthnum%/%postname%/.

对于页面,您将获得与/%postname%/相同的URL。 然而,使用这种永久链接结构,WordPress不可能在页面和帖子之间混淆,从而引发语言解析的潜在问题。

eval()函数的用法

必须启用eval()函数,因为WPML的结构和模板使用了TWIG框架,这使得WPML可以依靠这个函数。

大多数流行的模板引擎,如SmartyTWIG,都发现将PHP代码写入文件更快。 通过这种方式,它可以利用OPcode(操作码)缓存,并避免需要运行时构建模板代码。

为了避免可能的攻击,TWIG进行了大量的检查和消毒,可安全使用WPML。 然而,我们不能保证其他开发人员也进行了与我们在质量保证过程中所做的相同检查。

我们仍然在研究一些可能的解决方案,这些解决方案不需要动态编译模板,并且不需要使用eval()函数。 然而,目前,这是最好的解决方案。

请注意,通常PHP中不能禁用eval()函数,但Suhosin等一些扩展可以这样做。 这些扩展可以由您的主机提供商安装和配置。