First pass at better title handling for WordPress 4.1+ with proper back compatibility baked in.
This commit is contained in:
parent
23d0a41722
commit
83792b8566
3 changed files with 40 additions and 21 deletions
|
@ -42,30 +42,42 @@ add_filter( 'body_class', '_s_body_classes' );
|
|||
* @param string $sep Optional separator.
|
||||
* @return string The filtered title.
|
||||
*/
|
||||
function _s_wp_title( $title, $sep ) {
|
||||
if ( is_feed() ) {
|
||||
if ( ! function_exists( '_wp_render_title_tag' ) ) :
|
||||
function _s_wp_title( $title, $sep ) {
|
||||
if ( is_feed() ) {
|
||||
return $title;
|
||||
}
|
||||
|
||||
global $page, $paged;
|
||||
|
||||
// Add the blog name
|
||||
$title .= get_bloginfo( 'name', 'display' );
|
||||
|
||||
// Add the blog description for the home/front page.
|
||||
$site_description = get_bloginfo( 'description', 'display' );
|
||||
if ( $site_description && ( is_home() || is_front_page() ) ) {
|
||||
$title .= " $sep $site_description";
|
||||
}
|
||||
|
||||
// Add a page number if necessary:
|
||||
if ( ( $paged >= 2 || $page >= 2 ) && ! is_404() ) {
|
||||
$title .= " $sep " . sprintf( __( 'Page %s', '_s' ), max( $paged, $page ) );
|
||||
}
|
||||
|
||||
return $title;
|
||||
}
|
||||
add_filter( 'wp_title', '_s_wp_title', 10, 2 );
|
||||
endif;
|
||||
|
||||
global $page, $paged;
|
||||
|
||||
// Add the blog name
|
||||
$title .= get_bloginfo( 'name', 'display' );
|
||||
|
||||
// Add the blog description for the home/front page.
|
||||
$site_description = get_bloginfo( 'description', 'display' );
|
||||
if ( $site_description && ( is_home() || is_front_page() ) ) {
|
||||
$title .= " $sep $site_description";
|
||||
/**
|
||||
* Title shiv for blogs older than WordPress 4.1
|
||||
*/
|
||||
if ( ! function_exists( '_wp_render_title_tag' ) ) :
|
||||
function _s_render_title() {
|
||||
echo '<title>' . wp_title( '|', false, 'right' ) . "</title>\n";
|
||||
}
|
||||
|
||||
// Add a page number if necessary:
|
||||
if ( ( $paged >= 2 || $page >= 2 ) && ! is_404() ) {
|
||||
$title .= " $sep " . sprintf( __( 'Page %s', '_s' ), max( $paged, $page ) );
|
||||
}
|
||||
|
||||
return $title;
|
||||
}
|
||||
add_filter( 'wp_title', '_s_wp_title', 10, 2 );
|
||||
add_action( 'wp_head', '_s_render_title' );
|
||||
endif;
|
||||
|
||||
/**
|
||||
* Sets the authordata global when viewing an author archive.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue