最近我提出了一个关于内容过滤的问题。 现在我正在尝试对标题进行相同的过滤,但是当涉及到标题时它不会仅过滤the_title();但是正在过滤wp_nav中的所有标题。 目的是实现过滤单个帖子标题而不是循环内的标题(我知道in_the_loop())
<?php
class Filter_Title {
public function __construct() {
if( !is_front_page() && !is_home() && !is_single() ) return;
if( !is_singular( array('post','page') ) ) return;
add_filter( 'the_title', array(&$this, 'manage_page_title') );
}
public function manage_page_title($title) {
$title = '';
return $title;
}
}
$filtertitle = new Filter_Title();
?>
这是我的迷你插件类。
答案 0 :(得分:2)
我刚刚对此进行了测试,您可以将post_ID与param匹配,以检查其是否为帖子。 由于post id与菜单ID不匹配,因此应该可以使用。试一试。
function remove_post_title($title, $id) {
if (is_single() && in_the_loop() && $id == get_the_ID()) {
$title = '';
}
return $title;
}
add_filter('the_title', 'remove_post_title', 10, 2);
注意:在插件中,您可能需要将add_filter挂钩到另一个函数中,并像之前一样在wp_head中运行它。