看起来此属性已硬编码到您的身体标记中。
你可以自己调整body_lang()
功能如下(未测试):
<body
<?php ( function_exists( \'body_lang\' ) ) ? body_lang() : \'\' ;?>
<?php body_class(); ?>
>
您可以在
functions.php
文件:
/**
* Display the language attribute part for the body element.
*
* @param string $lang.
* @return void.
*/
if( ! function_exists( \'body_lang\' ) )
{
function body_lang( $lang = \'\' )
{
if( function_exists( \'get_body_lang\' ) )
echo get_body_lang( $lang );
}
} // end if function exists
以及
/**
* Retrieve the language part for the body element.
*
* @param string $lang.
* @return string $lang.
*/
if( ! function_exists( \'get_body_lang\' ) )
{
function get_body_lang( $lang = \'\' )
{
// default language
$lang = ( ! empty( $lang ) ) ? $lang : \'ur\';
// add your own logic here:
if( is_single() )
$lang = \'de\';
elseif( is_page() )
$lang = \'en\';
$attr = sprintf( \'lang="%s"\', $lang );
return apply_filters( \'body_lang\', $attr );
}
} // end if function exists
过滤器的位置
body_lang
为您提供进一步的控制。
要删除它,根据您自己的特殊逻辑,例如,您可以使用:
/**
* Remove the language part according to a custom logic
*
* @param string $attr.
* @return string $attr.
*/
function my_body_lang( $attr )
{
// add your own logic here:
if( is_single() )
{
// get the post meta value for \'language\'.
// It can be \'Yes\', \'No\' or empty
$show = get_post_meta( get_the_ID(), \'language\', TRUE );
// Let\'s hide it if it\'s empty or \'No\'
if( empty( $show ) || "No" === $show )
$attr = \'\';
}
return $attr;
}
add_filter( \'body_lang\', \'my_body_lang\' );
希望这能帮你找到解决办法。