让WordPress的摘要显示自定义排版格式

2019-03-27 08:45:33来源: boromeke.com 阅读 ()

新老客户大回馈,云服务器低至5折

WordPress默认的Excerpt(摘要)排版格式有些不尽人意,首先它默认的摘要输出字数是55,不支持HTML标签,也就是输出的内容不会换行,都是一大长段;此外JavaScript也无法被剥离出来。严重影响版面的美观性,除非是手动录入摘要内容。

我们要做的就是让自动提取的Excerpt(摘要)内容(非手动输入),显示自定义的排版格式。实现方法如下:

WordPress默认摘录的功能是在wp-includes/formatting.php这个文件里,我们要修改的只有主题functions.php文件,请把下面的代码加入到functions.php文件中

remove_filter('get_the_excerpt', 'wp_trim_excerpt');
add_filter('get_the_excerpt', 'improved_trim_excerpt');
function improved_trim_excerpt($text) {
        global $post;
        if ( '' == $text ) {
                $text = get_the_content('');
                $text = apply_filters('the_content', $text);
                $text = str_replace('\]\]\>', ']]>', $text);
                $text = preg_replace('@<script[^>]*?>.*?</script>@si', '', $text);
                $text = strip_tags($text, '<p>');
                $excerpt_length = 80;
                $words = explode(' ', $text, $excerpt_length + 1);
                if (count($words)> $excerpt_length) {
                        array_pop($words);
                        array_push($words, '[...]');
                        $text = implode(' ', $words);
                }
        }
        return $text;
}

这段代码中是将wp-includes/formatting.php里的

wp_trim_excerpt()

改为了

improved_trim_excerpt()

修改摘要内容输出的字数

$excerpt_length = 80;

让摘要内容支持HTML标签

$text = strip_tags($text, '<p>');

如果想加入更多的HTML标签,请在“<p>”的后面紧随着加入。

删除不需要的JavaScript代码

$text = preg_replace('@<script[^>]*?>.*?</script>@si', '', $text);

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:为主题添加前台删除文章及评论功能

下一篇:浅谈部分独立博客逐渐消亡的根本原因