仅从摘要摘录中删除“继续阅读”链接

时间:2013-01-25 作者:Marcus

我只想从摘要摘录中删除“继续阅读”链接,而不想从自动摘录中删除“继续阅读”链接,自动摘录的过滤器很容易获得。

这是原始代码;它来自Showcase模板页面模板:

    <?php while ( have_posts() ) : the_post(); ?>

<?php
    if ( \'\' != get_the_content() )
        get_template_part( \'content\', \'intro\' );
?>

<?php endwhile; ?>
以下是简介:

<div class="entry-content">
    <?php the_content(); ?>
    <?php wp_link_pages( array( \'before\' => \'<div class="page-link"><span>\' . __( \'Pages:\', \'mytheme\' ) . \'</span>\', \'after\' => \'</div>\' ) ); ?>
    <?php edit_post_link( __( \'Edit\', \'mytheme\' ), \'<span class="edit-link">\', \'</span>\' ); ?>
</div><!-- .entry-content -->
-->

5 个回复
SO网友:Rafael Marques

更改所有摘录的标准文本:

function custom_excerpt_more($more) {
   global $post;
   $more_text = \'...\';
   return \'… <a href="\'. get_permalink($post->ID) . \'">\' . $more_text . \'</a>\';
}
add_filter(\'excerpt_more\', \'custom_excerpt_more\');
创建自己的摘录功能:

// Rafael Marques Excerpt Function ;)
function rm_excerpt($limit = null, $separator = null) {

    // Set standard words limit
    if (is_null($limit)){
        $excerpt = explode(\' \', get_the_excerpt(), \'15\');
    } else {
        $excerpt = explode(\' \', get_the_excerpt(), $limit);
    }

    // Set standard separator
    if (is_null($separator)){
        $separator = \'...\';
    }

    // Excerpt Generator
    if (count($excerpt)>=$limit) {
        array_pop($excerpt);
        $excerpt = implode(" ",$excerpt).$separator;
    } else {
        $excerpt = implode(" ",$excerpt);
    }   
    $excerpt = preg_replace(\'`\\[[^\\]]*\\]`\',\'\',$excerpt);
    echo $excerpt;
}
使用<?php rm_excerpt(); ?> 当您想要显示自定义摘录时。第一个值集字限制和第二个值集分隔符。示例:<?php rm_excerpt(10,\' (...)\'); ?>. 要创建单独的链接“阅读更多”,请插入<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">Read More?</a>

SO网友:Brad Dalton

add_filter( \'the_content_more_link\', \'wpsites_read_more_link\' );
function wpsites_read_more_link() {
return \'<a class="more-link" href="\' . get_permalink() . \'"></a>\';
}
将此添加到函数文件中,它将删除“更多”链接。

http://codex.wordpress.org/Customizing_the_Read_More

SO网友:chowwy

听起来您想从\\u content()中删除“继续阅读”摘要。如果是,则以下示例来自Codex 将是您所需要的:

Read More Techniques

模板标记The\\u content()中的参数如下:

<?php the_content( $more_link_text , $strip_teaser ); ?>

$more\\u link\\u文本将链接文本设置为“阅读更多”。第二个$strip\\u-striser设置“more”链接是隐藏(TRUE)还是显示(FALSE)。默认值为FALSE,显示链接文本。

要删除摘要,请执行以下操作:

更改_content();在索引中。php to(即,第二个参数控制这一点):

`the_content(\'\',TRUE,\'\');`
包括<!--noteaser--> 在post文本中,紧跟在<!--more-->.

UPDATE
根据您的代码,您似乎在错误的位置添加了代码。如果看不到文件,您可能需要转到内容。php并查找\\u content()并在那里进行更改。我在一个使用模板的主题上进行了检查,效果很好。您还应该阅读更多关于模板的内容,以便了解它们的功能。简而言之:

1-从代码中删除此文本:如果(“”!=获取\\u内容(“”,TRUE“”)
2-转到内容。在主题中使用php并找到\\u content(),然后将其更改为the_content(\'\',TRUE,\'\')
3-添加<!--noteaser--> 如上所述

如果您正在使用<!--more--> 手动设置摘录。

SO网友:Scott Wolter

//.... get_the_content() .....//
只需按如下方式编辑此部分:get_the_content("")

用这个"" 您将使内容为空。因此,您只需阅读内容文本,而无需阅读更多链接:-)

SO网友:sean

我必须进入wp-includes 文件夹,位于formatting.php 归档并编辑第3284行,并将要包含在摘录中的默认字数更改为一个巨大的数字,如下所示:

    $excerpt_length = apply_filters( \'excerpt_length\', 550000000000000 );
默认值仅为55

结束