我是 WP 新手,我想更改门户上的标题显示,以使用过滤器在括号中显示发布日期?我该怎么办? 当我尝试这个时(@Dre的解决方案);我还得到了顶部菜单的日期:
function my_add_date_to_title($title, $id) {
$date_format = get_option('date_format');
$date = get_the_date($date_format, $id); // Should return a string
return $title . ' (' . $date . ')';
}
add_filter('the_title','my_add_date_to_title',10,2);
您可能最好编辑页面模板以简单地输出日期;它速度更快,并且更明显,以后更容易找到。通过过滤器应用内容可能会使追踪内容的来源变得更加困难。
话虽如此,如果您决定通过过滤器执行此操作,则需要将以下内容添加到您的
functions.php
文件中:
/* Adds date to end of title
* @uses Hooked to 'the_title' filter
* @args $title(string) - Incoming title
* @args $id(int) - The post ID
*/
function my_add_date_to_title($title, $id) {
// Check if we're in the loop or not
// This should exclude menu items
if ( !is_admin() && in_the_loop() ) {
// First get the default date format
// Alternatively, you can specify your
// own date format instead
$date_format = get_option('date_format');
// Now get the date
$date = get_the_date($date_format, $id); // Should return a string
// Now put our string together and return it
// You can of course tweak the markup here if you want
$title .= ' (' . $date . ')';
}
// Now return the string
return $title;
}
// Hook our function to the 'the_title' filter
// Note the last arg: we specify '2' because we want the filter
// to pass us both the title AND the ID to our function
add_filter('the_title','my_add_date_to_title',10,2);
未经测试,但应该可以工作。
它在网站中有效,但在搜索结果中不起作用,有什么解决方案可以在博客搜索结果中的标题中显示日期吗?