前端和后端的语言不同

时间:2011-08-27 作者:serhio

我用的是英文WordPress软件包,这很好。

现在,我想翻译博客的一些元素(如“发布”、“评论”)等,但要保留英文版的仪表板界面。

是否有任何机制只翻译站点元素?

7 个回复
SO网友:Roman

您可以执行以下操作:

获取语言包(例如。de_DE.mo) 从…起wordpress.org. 如果语言包无法作为独立下载提供,您也可以使用.mo 打包在您的语言的WordPress ZIP文件中的文件。位于以下位置wp-content/languages..mo 文件收件人wp-content/languages/ 默认(英文)WordPress安装WPLANG 常量inwp-config.php 到新的区域设置(例如。de_DE)functions.php 添加以下筛选器:

functions.php

add_filter(\'locale\', \'wpse27056_setLocale\');
function wpse27056_setLocale($locale) {
    if ( is_admin() ) {
        return \'en_US\';
    }

    return $locale;
}

SO网友:serge

Since WordPress version 4.7, 不同的Backend users 可以使用本机WordPress语言选择器设置自己的首选管理语言。这样,他们可以用自己的语言查看WordPress界面,并且可以更轻松地管理内容。Different language for Backend users in Wordpress independent of the Frontend language

SO网友:EckyBrazzz

在WordPress 5中。x获得不同的前端和后端语言非常简单

要更改站点语言,请转到设置->常规->站点语言,然后选择站点语言。

enter image description here

对于“管理”面板,转到“用户->您的配置文件”,然后在“管理”面板上选择您想要的语言

enter image description here

因此,上述所有解决方案都已成为绝对解决方案,每个用户都可以为WordPress界面设置自己的语言

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\');
这将强制仪表板以英语加载,然后您可以转到“设置”,设置所需的语言。

SO网友:indextwo

An updated answer for Wordpress 4+

@rofflox\'s answer 仍然是正确的,但自WP 4.0以来,Wordpress的一些更改在使用其“原样”功能时可能会产生影响。

wp config常量WPLANG has been deprecated 支持通过中的下拉菜单设置站点语言Settings->General. 这意味着,在将网站语言更改为Svenka (例如,您网站的管理员将以英语显示。。。但网站语言下拉列表Settings->General 将预选为English (United States). 这意味着,如果您稍后更改了常规设置,而忘记选择Svenka 作为您网站的语言,整个网站将恢复为英语。

我建议您在functions.php 像这样的文件:

//    Set the locale; original function from @rofflox

function vnmFunctionality_setLocale($locale) {
    if (is_admin()) {
        return \'en_US\';
    }

    return $locale;
}

add_filter(\'locale\', \'vnmFunctionality_setLocale\');

// Enqueue a script to force-set the Language dropdown on the General Options page, just in case we forget about it later.

function vnmFunctionality_countryReminderScript($hook) {
    if ($hook != \'options-general.php\') {
        return;
    }

    wp_enqueue_script(\'lang-reminder-script\', get_template_directory() . \'/js/site-language.js\', array(\'jquery\'), \'1.0.0\', true);

    wp_localize_script(\'lang-reminder-script\', \'langObject\', array(
        \'lang\'  => get_option(\'WPLANG\'),
    ));
}

add_action(\'admin_enqueue_scripts\', \'vnmFunctionality_countryReminderScript\');
然后是一个名为site-language.js (保存在/js/ 主题中的文件夹)如下所示:

jQuery(document).ready(function($) {
    $(\'select#WPLANG\').val(langObject.lang).change();
});
这将在选项页面的下拉列表中自动预选站点的当前显示语言,这样您就不必每次都记住手动操作。

SO网友:user8388

你需要的是翻译你的主题。如果你的主题有。pot文件,这样就很容易翻译了。只需按照以下步骤操作

http://www.appthemes.com/blog/how-to-translate-a-wordpress-theme/

否则,您需要编辑主题文件并在每个实例中更改单词。

结束

相关推荐

Custom metabox translation

我已经创建了一个自定义的帖子类型,并添加了一些自定义的元数据库,现在我想知道我在我的网站上使用了什么样的翻译插件?我对它们都没有经验,所以我不知道谁会支持我的自定义元数据库,谁不会。