在Wordpress博客上,我经常使用摘录。在我的主页上,我想在文本的同一行写一个"阅读更多…"(没有CSS),但我不希望它出现在我的新闻页面上。我发现了这个代码,它正是我想要的,但它适用于所有的摘录。我怎么能让它在主页上这样做?
function new_excerpt_more( $more ) {
return ' <a class="read-more" href="'
. get_permalink( get_the_ID() )
. '">Read More...</a>';
}
add_filter( 'excerpt_more', 'new_excerpt_more' );
这应该有效:
function new_excerpt_more($more) {
if(is_home())
$more = ' <a class="read-more" href="'. get_permalink( get_the_ID() ) . '">Read More...</a>';
return $more;
}
add_filter( 'excerpt_more', 'new_excerpt_more' );
编辑:在主题中,在循环之前,您应该添加一个变量(一个标志),看看它是否是您想要的页面:
$my_flag = is_page( array( id, id, id, id, 'page-name', 'page-slug' );
if( have_posts() ) :
while( have_posts() ) :
// Your code
endwhile;
endif;
在您的函数(new_except_more)中,您必须这样检查它:
function new_excerpt_more($more) {
global $my_flag;
if(is_home() || $my_flag)
$more = ' <a class="read-more" href="'. get_permalink( get_the_ID() ) . '">Read More...</a>';
return $more;
}
add_filter( 'excerpt_more', 'new_excerpt_more' );
我还没有测试过,但应该可以。然而,页面不应该显示单个内容吗?它永远不会只显示摘录(当然,这将取决于你的主题:P)
文件:is_home()