摘录";阅读更多";嵌入文本


Excerpt "Read More..." Embedded In Text

在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()

相关文章: