如何排序Wordpress标题标签部分?

时间:2016-04-07 07:29:03

标签: wordpress title

我需要更改标题部分的位置。现在我的主页呈现:

“blogname separator description”

我想把blogname放在最后:

“description separator blogname”

我的主题支持title-tag,我读到它有3个过滤器,它们是:

add_theme_support( 'title-tag' );

  • pre_get_document_title如果返回空值以外的任何内容,则会短路wp_get_document_title()
  • document_title_separator过滤标题部分之间的分隔符。
  • document_title_parts过滤组成文档标题的部分,并以关联数组形式传递。

如何使用它们来改变标题部分的位置?

2 个答案:

答案 0 :(得分:1)

在主页或首页WordPress上更改标题部分

@retroriff ,如果您需要在主页上重新订购titletagline作为wp标题的一部分,则可以使用过滤器document_title_parts,以及火有功能。首先,我们需要取消它们,然后重新构建为订单。这是我的示例方法:

add_filter( 'document_title_parts', 'wp36469459_document_title_parts', 1, 1 );
function wp36469459_document_title_parts( $title )
{
    if ( is_home() || is_front_page() ) {

        //we unset title and tagline
        unset( $title['title'], $title['tagline'] );

        //re-build and order
        $title['tagline'] = get_bloginfo( 'description', 'display' );
        $title['title']   = get_bloginfo( 'name', 'display' );
    }

    return $title;
}

OR

add_filter( 'document_title_parts', 'wp36469459_document_title_parts', 1, 1 );
function wp36469459_document_title_parts( $title )
{
    if ( is_home() || is_front_page() ) {
        $_title   = $title['title'];
        $_tagline = $title['tagline'];
        unset( $title['title'], $title['tagline'] );
        $title['tagline'] = $_tagline;
        $title['title']   = $_title;
    }
    return $title;
}

您可以根据需要调整代码。

答案 1 :(得分:1)

如果您只需要反转标题部分(对于主页),则可以使用:

function theme_document_title_parts($title) {
  return (is_home() || is_front_page()) ? array_reverse($title) : $title;
}

add_filter('document_title_parts', 'theme_document_title_parts');