如何同时使用英式英语和美式英语?

时间:2013-09-17 作者:Linda H

我已经接管了一个针对不同市场的网站,使用五种语言版本,每种语言版本都是在多站点网络中作为自己的站点设置的。主网站主要面向英国观众,其中一个语言版本面向美国观众。

获取lang 就在html标记中,如下所示<html <?php language_attributes(); ?>> 我需要将每个站点的站点语言设置为相关站点所使用的语言,但当我安装en\\u GB语言文件时,默认的英语选项将消失。根据WP网站,没有en\\u US语言文件。

人们通常如何解决这个问题?在本例中,虽然我可以为每个站点硬编码lang属性,但它仍然会提出一个供将来使用的问题。

ETA:根据下面@toscho建议的代码,我将其添加到我的函数文件中。它会向列表中添加一种语言,但由于某种原因,它不会被保存。这个$current 参数仍保留前一个参数。

add_filter(\'mu_dropdown_languages\', \'add_en_us\', 10, 3);

function add_en_us( $output, $lang_files, $current ) {
    array_unshift(
        $output,
        \'<option value="en_US"\' . selected( $current, \'en_US\', false ) . \'>\'
        . __( \'American English\' ) . "</option>"
    );
    return $output;
}
基于此项目中的时间限制,我将尝试添加空语言文件,但我仍然想知道如何使其正常工作。

1 个回复
SO网友:fuxia

您可以筛选mu_dropdown_languages 在这里再加上美国英语。

未测试的示例代码:

add_filter( \'mu_dropdown_languages\', function( $output, $lang_files, $current )
{
    array_unshift(
        $output,
        \'<option value=""\' . selected( $current, \'en_US\', false ) . \'>\'
            . __( \'American English\' ) . "</option>"
    );
    return $output;
}, 10, 3 );
过滤器sanitize_option_WPLANGpre_update_option_WPLANG 跳转到保存过程并更正任何可能的问题。

结束

相关推荐

在许多外观相似的网站上使用MultiSite有什么缺点吗?

我正在为一位摄影师开发多个网站。大多数时候,我都会围绕摄影师拍摄的这些精彩图片进行定制设计,但在很多情况下,公司没有预算让我们创建定制设计的WP网站。因此,我正在寻找一种简单的方法,为我的客户提供一个“模板”。一个基本的网站,我设置,自定义一点,作为我们客户的服务。我的想法是:我创建了一个主题,每个新网站都有自己的子主题,只需稍作修改。所有网站在结构上都是相同的,但我会调整徽标、颜色、字体和总体外观。每个网站都有自己的域名,因此不涉及子域。它们都共享一些插件,比如GravityForms。这似乎是我的一个