两种语言的Language_Attributes?

时间:2015-11-27 作者:hunnt

我正在寻找手动更改language\\u属性的选项,而无需像这样硬编码

html lang="en-US"
html中的it self。这样做的原因是我有三个语言站点,使用相同的WP引擎,我想要一个,并且每个都使用特定的lang属性运行。这可能吗?有这样的东西来改变它会很好:

<?php language_attributes(\'lang="en-US"\'); ?>

1 个回复
SO网友:jgraup

可以在设置值之前使用过滤器修改该值

function __language_attributes($lang){

  // ignore the supplied argument
  $langs = array( \'en-US\', \'KO\', \'JA\' );

  // change to whatever you want
  $my_language = $langs[0];

  // return the new attribute
  return \'lang="\'.$my_language.\'"\';
}

add_filter(\'language_attributes\', \'__language_attributes\');
然后只需确保您的主题标头具有正确的php函数

<!DOCTYPE html>
<html <?php language_attributes(); ?> class="no-js">
<head>
  • https://codex.wordpress.org/Function_Reference/language_attributes

    // Make this variable global
    global $__language_attribute;
    
    // Set the language we want to use
    $__language_attribute = \'en-US\'; 
    
    // Listen for the language filter
    add_filter(\'language_attributes\', \'__language_attributes_use_global\');
    
    function __language_attributes_use_global($lang){
       global $__language_attribute;
       return "lang=\\"$__language_attribute\\"";
    }
    

    ALTERNATE

    // set your language here
    $my_lang = \'KO\';
    
    // subscribe with closure to apply this value later
    add_filter(\'language_attributes\', function($lang) use ($my_lang) {
        return \'lang="\' . $my_lang . \'"\'; 
    });
    

相关推荐

Admin Theme customization

我遵循wordpress codex网站上关于通过插件创建管理主题的说明。我激活了插件,但我的样式表没有包含在<head>.. 这是我的代码:add_action( \'admin_init\', \'kd_plugin_admin_init\' ); add_action( \'admin_menu\', \'kd_plugin_admin_menu\' ); function kd_plugin_admin_init() { /* Register