WordPress首页显示摘要完全技术详解

2008年6月15日22:06:49 技术分享 47 23,462

最近不管是在群里(群号:39872098)还是在社区里,很多朋友都在问WordPress首页显示摘要这个问题,今天刚好研究了一下,就整理出来了分享给大家,相信看过了这篇文章,大家对首页显示摘要应该不会再有任何问题了。

在博客首先显示摘要有两种方法,一种是手动的,也就是使用日志编辑器中的“more”;第二种是自动的,也是今天主要介绍的。
第一种,手动在文章中添加“more”,这个的自由度比较大,你想在哪里截断文字,就在哪里截断,每次只要按一下more功能按钮,就能实现了,好处就是,随意截断,坏处就是每次都要手动,如果哪次忘掉可,加上日志比较长的话,首先显示的现实比例会失调。

第二种,在首页显示摘要,自动。
具体方法:

打开当前使用主题的index.php文件,查找:< ?php the_content(__('(more...)')); ?>

或者< ?php the_content(); ?>

修改为:< ?php the_excerpt(); ?>

保存,现在你的Wordpress,除非打开单个post,其他情况下都是显示摘要。
友情提示:在写一篇日志的时候,如果你在Optional Excerpt中填写了内容,摘要就显示此部分内容。其他情况下,Wordpress都会自动截取日志开头的部分内容显示出来。
这个的缺点也是显而易见的,比如你的超链接会失效,一些插件的效果也会失效,而且摘要内容显示的样式会很呆板。

现在解决最后一个问题,摘要显示字数的问题,Wopus中文社区里马金杰同学问了这个问题,其实摘要的字数也是可控的,在程序的wp-includes文件夹里寻找formatting.php文件,然后找到这行代码:
$excerpt_length = 55;
将55修改成你想截取的数字,至于这个55是字符还是汉字,相信大家用屁股都能想出来!^_^

有些朋友如果使用了桑林志的中文Wordpress工具箱,也会有摘要字数显示的问题,在这个插件中到这个文件mulberrykit.php,然后在文件里搜索这句代码:
$myexcerpt = substr($excerpt,0,255);
255就是摘要的字数,修改就OK!

2008.08.05更新:感谢Charles的补充晚上,已经修正。欢迎查看Charles的补充评论
到此,关于首页摘要的实现详解就完成了,在看完以后,记得测试,有问题,欢迎留言讨论!

评论已关闭!

目前评论:47   其中:访客  42   博主  0   引用   5

    • MY-Hou MY-Hou 4

      一直都用more,习惯了

      • 酋 长 酋 长 9

        @ My-Hou 手动男,我也是用More,主要是自由度大很多,关键一点,摘要对日志格式的破坏,是我不能容忍的。

        • 我是小白 我是小白 3

          在这个插件中”超”到这个文件

          拼音输入法,打错别字是我不能容忍的

          • 酋 长 酋 长 9

            @ 我是小白 已经修正,错别字是我心中永远的痛。以后尽量避免,感谢指出,欢迎继续捉虫!

            • BFcat BFcat 0

              学习了。 谢谢酋长说明。

              • 酋 长 酋 长 9

                @ BFcat 客气,欢迎常来!

                • @i@生物柴油 @i@生物柴油 3

                  多谢酋长,问题就出在了wordpress中文工具箱上,用more的话摘要会显示在日志中,这样是不是重复了,而且也要单独写,是不是自定义好一些呢

                  • 酋 长 酋 长 9

                    @ @i@生物柴油 文章中已经说明白了,至于怎么办,就看你自己了,个人很喜欢More。

                    • 我养了一只小白 我养了一只小白 0

                      虽然我不懂 但还是要支持一下

                      • 酋 长 酋 长 9

                        @ 我养了一只小白 莫非是某人的马甲?哈哈,不懂没关系,先学习下,等以后遇到了,也就有需要了!

                        • nicety nicety 3

                          文章不错,最主要的是喜欢里面的代码,可是在我的博客里实现,不了,因为我的博客用的不是more,而是用的ajaxed技术在本页显示的,好像在群里说过这个问题,只是没有引起大家的共鸣,希望帮助解决一下

                          • 酋 长 酋 长 9

                            @ nicety 代码是用coolcode实现的,你可以看看这个帖子:
                            http://bbs.wopus.org/thread-210-1-1.html
                            ajaxed?什么意思?

                            • dickym dickym 4

                              习惯自然了。。。。
                              自己截取吧

                              • 酋 长 酋 长 9

                                @ 也喜欢使用More,Wopus中文平台的每次都是用More!

                                • dickym dickym 4

                                  呵呵。。自己more比较踏实点。。。

                                  • xiaoniba xiaoniba 0

                                    K2如何截断

                                    • 酋 长 酋 长 9

                                      @ xiaoniba 差不多吧,和主题的类别没关系吧!

                                      • Charles Charles 1

                                        我觉得,直接改成the_excerpt()就可以了,没有必要去if一下子。

                                        因为如果真的single,根本不会调用 index.php 而是直接调用 single.php。所以说,文章中说的那个if的else部分永远不会执行,完全是浪费。

                                        一点愚见,与楼主切磋。

                                        • Charles Charles 1

                                          再补充一个关于55的看法,那个55,Yskin大大已经分析过了,表示的是空格的数量,对于英文,就是55个单词的意思,对于汉语这种几乎没有空格的语言,改成几,都不会有好效果。所以,还是推荐直接用中文WordPress工具箱,或者是Yskin的CJK-Excerpt。

                                          • 酋 长 酋 长 9

                                            @ Charles 感谢,已经在文章中修正,并更新,欢迎常来~~~

                                            • Poshi Poshi 1

                                              觉得这还是wp不好的一个地方吧,因为不能自定义每篇文章的摘要~~~

                                              • 酋 长 酋 长 9

                                                @ Poshi 有CMS可以这样?

                                                • xiaoxie xiaoxie 1

                                                  嘿嘿 谢谢呀

                                                  • Carl.Ma Carl.Ma 0

                                                    中文Wordpress工具箱这个方法是管用,但是摘要之显示文字,图片一个也显示不出来啊,就算把字数调大也不行,很郁闷呢。还能改进么?

                                                    • 酋 长 酋 长 9

                                                      @ Carl.Ma 我写的很清楚:这个的缺点也是显而易见的,比如你的超链接会失效,一些插件的效果也会失效,而且摘要内容显示的样式会很呆板。

                                                      • loke loke 4

                                                        看来还是 more用得人多一点~瓦咔咔

                                                        • dogorgod dogorgod 2

                                                          郁闷,还是得手动在Optional Excerpt中添加

                                                          • Eden Eden 1

                                                            对于图片多,文字少的post,显示摘要的设置就很麻烦了,还怎么衡量呢?只显示一幅图片该怎么计算? http://51gadget.com/blog/

                                                            • 酋 长 酋 长 9

                                                              @Eden
                                                              使用手动吧,手动更加灵活自如。

                                                              • 理财客 理财客 0

                                                                不错,谢谢酋长!!!

                                                                • 步惊云 步惊云 1

                                                                  照楼主所言,但是结果不显示摘要,形如:
                                                                  18 Nov 08 今天当了一天会计

                                                                  Tags: 会计, 银行

                                                                  Filed in 未分类 with 0 Comments

                                                                  请帮助!

                                                                  • 步惊云 步惊云 1

                                                                    显示的是代码,不是真实的摘要

                                                                    • AS AS 1

                                                                      手动是不是加入

                                                                      这个?但是在2.7不起作用,真晕!
                                                                      谢谢

                                                                        • 酋 长 酋 长 9

                                                                          @AS 有用啊,应该是你设置的代码有问题。

                                                                        • AS AS 1

                                                                          “!–more–”
                                                                          改为””

                                                                          • 问道 问道 0

                                                                            very good

                                                                            • 临风看海 临风看海 0

                                                                              我用的代码是:

                                                                              <a href=>阅读全文?

                                                                              高效简洁,参见我的博客http://www.ps-soft.cn

                                                                              • hopesun hopesun 0

                                                                                自做了个插件,实现了真正的摘要完美输出:
                                                                                http://www.hopesun.info/613.html

                                                                                • 普洱 普洱 0

                                                                                  受教了。先去试验下再说

                                                                                  • 越小墨 越小墨 0

                                                                                    index里面 这两个东西 我都没有 这怎么办?

                                                                                    • 任刚的博客 任刚的博客 1

                                                                                      我是从google搜索来的
                                                                                      我遇到了这个问题
                                                                                      但是你的方法好像不适合我的主题呢
                                                                                      我修改了传上去唯一的作用就是原文的关键词超链接没了 , 但是一个字不少呢首页
                                                                                      我的3.0.1

                                                                                    • 来自外部的引用: 5

                                                                                      • 弹指神功 » 内容索引 » Wordpress首页显示摘要完全技术详解 – 弹指神功
                                                                                      • Wordpress首页显示摘要完全技术详解 | Welcome to www.studydog.net
                                                                                      • 在WordPress首页和目录页显示摘要的方法 | 一品带刀
                                                                                      • Wordpress首页显示摘要完全技术详解 | 钱途
                                                                                      • Wordpress首页显示摘要完全技术详解 | 技术宅改变世界