用钩子设置自定义页面标题

时间:2012-03-29 13:25:20

标签: php wordpress hook

我正在尝试使用<title></title>设置自定义页面标题(wp_title)。

世界上最简单的功能:

function sweety_page_title($string)
{
    echo $string . ' - ';
}

我打电话后:

do_action('wp_title', 'my title...');
add_action('wp_title', 'sweety_page_title', 10, 1);

但它不起作用。

我哪里错了?

4 个答案:

答案 0 :(得分:3)

首先请确保您没有安装任何可能会过滤您的标题的SEO插件。然后在functions.php文件中尝试:

add_filter('wp_title','sweety_page_title',10,1);

function sweety_page_title($title){
    $title='Your new title'; //define your title here
    return $title;
}

答案 1 :(得分:2)

要更改页面标题,您应该加入 document_title_parts

function wpdocs_filter_wp_title( $title, $sep ) {

    $title['site'] = 'My Site Title';
    $title['tagline'] = 'My Site Tagline';

    return $title;
}
add_filter( 'document_title_parts', 'wpdocs_filter_wp_title', 10000, 2 );

此外,如果您需要更多详细信息,请检查此文件可能有所帮助:

\ wp-includes \ general-template.php:wp_get_document_title()方法

答案 2 :(得分:2)

<xsl:value-of select="normalize-space(replace($number,'^.*one(.*)$','$1'))"/> 

答案 3 :(得分:0)

<?php add_filter( 'wp_title', 'filter_function_name', 10, 3 ) ?>

看看这个http://codex.wordpress.org/Plugin_API/Filter_Reference 有所有钩子检查。

获取变量$var=add_filter( 'wp_title', 'filter_function_name', 10, 3 );现在调用你的函数sweety_page_title($var)