WordPress应该始终允许我随时更改语言。但是,有时我会陷入这种情况,只能选择“英语(美国)”。
(设置>常规设置>网站语言)
我的期望:
我得到的是:
这是为什么?我怎样才能解决这个问题?
chown -R apache:apache /path/to/virtual/domain
和SELinux提供正确的设置),这使我在安装后可以选择另一种语言。
WordPress应该始终允许我随时更改语言。但是,有时我会陷入这种情况,只能选择“英语(美国)”。
(设置>常规设置>网站语言)
这是为什么?我怎样才能解决这个问题?
chown -R apache:apache /path/to/virtual/domain
和SELinux提供正确的设置),这使我在安装后可以选择另一种语言。
Answers:
也许WordPress没有权限保存新的语言文件。我遇到了同样的问题,并通过将以下内容添加到wp-config.php
define('FS_METHOD', 'direct');
您可能还需要检查-目录wp-content/
对于Web服务器用户是否可写。
wp-content
权限更改为777可解决此问题!
我以前没有WP的经验。我尝试安装WP 4.7并遇到相同的问题。下拉列表中只有英语。我以为WP自动下载所有翻译文件,但不幸的是没有。
要在下拉列表(设置>常规设置>网站语言)中获取语言,您需要将翻译文件安装到wp-content/languages
目录中。
要下载语言文件,请在此处https://translate.wordpress.org/projects/wp 选择WP版本,然后 选择语言。您将获得一个页面,您可以在其中下载语言文件。
例如对于wp4.7乌克兰我有此页面
translate.wordpress.org/projects/wp/4.7.x/uk/default
在页面末尾找到Export
链接。选择“所有当前 ”作为“ 机器对象消息目录(.mo) ”,然后单击export
然后将下载的文件放在wp-content / languages目录中。打开或刷新“设置”>“常规设置”页面。您应该在下拉列表中看到新语言。
准确下载.mo文件很重要。我花了很多时间尝试安装.po文件。另外,如果您的Linux用户只有.po文件,则可以通过命令将其转换
msgfmt -o uk_UA.mo uk_UA.po
要为插件和主题安装翻译文件,您应该做相同的事情,但要有所不同。
您可以在这里找到更多详细信息 https://codex.wordpress.org/Installing_WordPress_in_Your_Language
刚遇到同样的问题。就我而言,原因很简单。当您安装英文版的WordPress时,没有languages
该wp-content
目录下子目录。手动创建它,您将在WP仪表盘上收到所有可用的语言列表。首先,选择并安装所需的语言。此时,您获得了WP核心翻译文件,但没有插件或主题文件。要获取所有其他翻译文件,请转到“ 仪表板”下的“ 更新”部分,然后单击“ 再次检查”按钮。在页面底部,您会看到一条消息:新翻译可用。单击更新翻译按钮,然后WP将为您的插件和主题下载所有可用的翻译。
如上所述,WP必须具有以下权限: languages
目录,您将必须手动下载所有翻译文件。WordPress核心的翻译文件(.mo
和.po
)位于languages
目录中,已安装主题的翻译文件位于languages/themes
子目录中,而已安装插件的翻译文件位于languages/plugins
子目录中(这两个子目录将由WP自动创建,当然,如果有足够的权限可以做到)。
languages
按照另一个答案中的说明添加和添加.mo文件。这很有用。
我遇到了同样的问题,花了数小时来阅读不同的复杂解决方案。
只需3个非常基本的步骤。
1在'/ wp-content'目录中创建一个名为'/ languages'的新文件夹
。2在该文件夹中复制要安装的语言的语言包
(从https://make.wordpress.org/polyglots/下载)队/)
3通过界面选择新语言
此处的详细信息:https : //www.linuwi.com/tutorials/how-to-change-wordpress-language/
我已经解决了这个问题,为wordpress搜索定义了正确的搜索方式 wp-content
文件夹的方式。
在中,wp-config.php
您可以指定wp-content
文件夹的位置。根据您正在使用的系统,尝试设置以下代码:
define('WP_CONTENT_DIR', realpath(dirname(__FILE__) . '/wp-content'));
或这一个:
define('WP_CONTENT_DIR', realpath($_SERVER['DOCUMENT_ROOT'] . '/wp-content'));