我们要在wordpress主题根据不同的页面动态生成文章标题,需要使用函数wp_title()函数,今天我们来系统记录学习如何更好的使用它来优化我们的页面,更利于SEO.
1、函数原型
PHP wp_title( $sep,$echo,$seplocation ); ?>
2、参数
$sep
(字符串)(可选)显示在文章标题前后的文字信息(如分隔符)。默认情况下(若分隔符被设为空),那么文章标题前后(由seplocation参数决定)会显示 & raquo; (»)符号。
默认值:
& raquo; (»)
$echo
(布尔型)(可选)回应标题(True),或以PHP字符串形式返回标题(False)。
默认值:True
1 (True) ——默认值
0 (False)
$seplocation
(字符串)(可选)引入于wordpress 2.5,该参数决定sep字符串相对于文章标题的位置。除“right”外的所有值都会将sep放在文章标题前(左侧)。如果seplocation的值为'right',那么sep字符串会显示在文章标题后。
默认值:None
3、用法举例
在functions.PHP中,可以这样改造封装
实例一
在 functions.PHP 加入
add_filter( 'wp_title','wpdocs_hack_wp_title_for_home' );
/**
* Customize the title for the home page,if one is not set.
*
* @param string $title The original title.
* @return string The title to use.
*/
function wpdocs_hack_wp_title_for_home( $title )
{
if ( empty( $title ) && ( is_home() || is_front_page() ) ) {
$title = __( 'Home','textdomain' ) . ' | ' . get_bloginfo( 'description' );
}
return $title;
}
实例二
在 functions.PHP 加入
/**
* Creates a nicely formatted and more specific title element text
* for output in head of document,based on current view.
*
* @param string $title Default title text for current view.
* @param string $sep Optional separator.
* @return string Filtered title.
*/
function wpdocs_filter_wp_title( $title,$sep ) {
global $paged,$page;
if ( is_Feed() )
return $title;
$title .= get_bloginfo( 'name' );
$site_description = get_bloginfo( 'description','display' );
if ( $site_description && ( is_home() || is_front_page() ) )
$title = "$title $sep $site_description";
if ( $paged >= 2 || $page >= 2 )
$title = "$title $sep " . sprintf( __( 'Page %s','twentytwelve' ),max( $paged,$page ) );
return $title;
}
add_filter( 'wp_title','wpdocs_filter_wp_title',10,2 );
PS
wordpress开发团队,已经声明在未来,wordpress4.0以上,会对API升级,让用户让用户选择的文档标题,下面是给出一个对wp_title()函数改进的方向:
if ( ! function_exists( '_wp_render_title_tag' ) ) :
function theme_slug_render_title() {
?>
}
add_action( 'wp_head','theme_slug_render_title' );
endif;
如果你对wp_title的改进升级感兴趣,可以查看官方开发文档:
https://make.wordpress.org/core/2015/10/20/document-title-in-4-4/
原文链接:https://www.f2er.com/wordpress/422781.html