本地化:我想要定义语言的后端:英语和前端

时间:2011-11-01 作者:unfulvio

我希望Wordpress的后端为英语,前端使用不同的语言环境

到目前为止,我想也许我可以通过在wpconfig中设置我想在前端使用的语言环境,然后添加函数来实现这一点。php类似于:

add_filter(\'locale\', \'mytheme_backendlocale\');
function mytheme_backendlocale($locale) {
    if ( is_admin() ) {
        return \'en_US\';
    }
    return $locale;
}
这是实现我想要的目标的最佳实践,还是我应该采取不同的做法?

4 个回复
最合适的回答,由SO网友:fuxia 整理而成

安装插件WP Native Dashboard. 然后,您可以在中为前端设置一种语言wp-config.php 每个用户都可以为后端选择另一个
请参见Change language of comments template 查看详细信息和屏幕截图。

SO网友:Andy James

有一个插件可能就是您所需要的。

http://wordpress.org/extend/plugins/fe-be-localization/

SO网友:Luca Reghellin

到目前为止,我认为富尔维奥的答案是最好的。即使在多站点设置中,我也在使用该过滤器,只有一行:

add_filter(\'locale\', \'set_admin_locale\');
function set_admin_locale($locale) {
  return \'en_US\';
}
基本上有时,在这种情况下,我使用多站点来创建多语言站点,而不是插件。此外,每种语言都有一个单独的主题(通常是主语言的子主题)。所以网络的每个站点都有自己的语言,但在管理方面,我需要所有意大利语界面。

所以我要做的是:

我在wp config中不使用常规WPLANG常量。php我在每个网络站点的每个主题功能中都设置了意大利语。php我使用上述过滤器来控制前端语言/区域设置注意:该过滤器不会更改管理语言,因此无需检查is\\u admin()

SO网友:Motaz M. El Shazly

如果有人仍在寻找,下面是自4.7版以来您应该做的事情

function wp_noshor_redefine_locale($locale) {
    if( is_admin() ):
        switch_to_locale(\'en_US\');
    endif;
}
add_filter(\'init\',\'wp_noshor_redefine_locale\');
这将强制仪表板以英语加载,然后您可以转到“设置”,设置所需的语言。

结束

相关推荐

Front-End Post Submission

我正在尝试添加一个表单,用户可以从前端提交帖子。我正在学习本教程:http://wpshout。com/wordpress从前端提交帖子/我正在做的是添加this code 到我的一个页面模板。表单显示正常,但当我单击“提交”按钮时,它会显示“Page not found error“”许多评论者说这不起作用。谁能给我指出正确的方向吗?代码是否不完整?有缺陷吗?我做错什么了吗?谢谢Towfiq I。