- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章wordpress首页显示摘要的几种方法小结由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
more标签 这种方法应该是最灵活的一种方法,操作也很简单,只需要你在编辑文章的时候插入more标签 或者使用快捷键alt+shift+t,效果如下 那么如果你在主题的首页模板中调用the_content函数,首页的文章摘要就显示more之前的内容。相反,如果没有插入more标签,就会显示全文。 手动输入摘要 在首页模板中(比如home.php或index.php)中调用the_excerpt函数显示摘要,如果你在编辑文章的时候,在下面的“摘要”内输入了内容,则会显示该“摘要”里的内容 首页、存档页显示文章摘要的好处很多,比如: 1,页面不会拉的很长,既美观,又有利于访客快速找到所需的文章 2,减少搜索引擎认为的重复内容 3,浏览者想看到全文就得点击进入单个文章页,因此增加了点击量 -.- 4,首页、存档页数据量少了,节约了流量和带宽,提高了页面打开速度 RSS 输出全文的好处只用讲一条:作为读者,我订阅feed的时候很讨厌那种只输出摘要的 但是,wordpress默认的是显示全文,不但第一页显示全文,点“下一页”,进入第二页、第三页、乃至无穷页,也都显示全文。那么如何解决这一问题呢?网上流传着很多方法: 1、在写日志时插入<!–more–>标签,这样在首页、存档页显示的就只是<!–more–>之前的内容。 这种做法缺点太明显: 1,rss输出也变成了只有<!–more–>之前的内容。实际上,这一缺点可以通过改代码、装插件等办法克服,但另一个缺点则无法克服: 2,如果你之前已经写了数百篇文章,难道还要一个个修改,重新加上<!–more–>标签吗? 2、修改主题的模板文件,在 index.php 里找到 。
改成 。
这样改的作用是加一个判断,如果是单篇日志页或静态页面,则输出全文,否则输出摘要.
看上去很美,但wordpress默认的摘要输出算法是根据西文来的,以空格判断字数,而中文里基本没空格,所以它算完了之后输出的“摘要”其实还是全文……因此,对中文博客而言,此法必须和其他办法协同使用.
3、写日志时自定义摘要。在写日志界面有一个“自定义摘要”字段,把自己想显示为摘要的话输入进去即可.
这种办法优点非常突出:不像其他办法都只能把文章开头的若干字显示为摘要,这种方法的摘要内容非常灵活,可完全自定义.
但缺点也很突出:和第一种办法一样,以前的文章都要一个个手工改,工程过于浩大.
4、修改 WordPress 自带的摘要函数 根据http://www.fwolf.com/blog/post/102(这篇文章网上转载很多,我个人判断认为这里是原始出处,可叹很多转载的在搜索引擎中排名倒更靠前) 。
修改wordpress的源文件,对一般用户来说恐怕有点难度,而且如果升级wordpress还得重新修改,维护不方便。不过最新发现原作者把它写成了一个插件,所以都放在下面插件里面一起讲吧.
5、使用插件,主要仍是修改wordpress自带的摘要函数。不过wordpres默认的情况是存档页(按分类、标签和时间存的档)用摘要输出,主页及主页上点进去的第二页、第三页等等用全文输出,因此即使用了插件,想要首页显示摘要的话,仍要用第二种方法修改一下主题的模板文件才行.
下面分析一下我知道的几个插件的算法:
1,Fwolf的 http://www.fwolf.com/blog/post/296 和wp自带的几乎一样,只不过把按空格判断改成了按段落判断,会输出文章的前三段作为摘要。因为是按段落输出,也不会出现中文乱码.
2,桑葚的中文工具箱 http://yanfeng.org/blog/wordpress/kit/ 用substr()函数截取前256个字节,再用utf8_trim()函数处理,保证中文不会出现乱码.
3,Yskin的 http://yskin.net/2006/07/mulberrykit.html 我原来推荐过这个,觉得很完美,但后来觉得我个人还是有些定制化的要求,决定自己动手改一改,因此才有了这篇文章 -.- Yskin的是段落和字数混合判断,先根据回车把文章分割成n段,然后用mb_strlen()判断字数,如果没超过规定的字数,就再输出一段。因此他的最小输出单位仍然是段落.
以上所有方法都有一个共同特点:输出的摘要是没有格式的,只有纯文本,原来的颜色、字体、超链接、图片等等都被过滤掉了。而我个人其实希望能够保留格式.
。
另外,按段落输出的话,有的段落长,有的段落短,那么输出的摘要就不是很整齐(其实苛求这个整齐对一般的blog也没什么意义,不过如果是cms或杂志风格的主题,对排版可能有一定需求,另外就是我个人的偏好 -.-).
最理想的情况是根据显示的行数判断,就像古龙的小说一样,按行数算钱,不管这行是只有一个字,还是写满了,这样输出的文字块大小一定是整齐的。但网页不像书本,宽度不固定,无法预知每行写满了应该是多少字,而且如果保留图片的话,那么图片应该占多少行也很难判断,所以根据行数判断暂时不可行.
退而求其次的办法是根据字数判断。每个摘要虽然“占地面积”可能不一样,但字数是一样的,也还算整齐。不过中文工具箱的办法有点麻烦,其实有个mb_substr()函数就完全可以达成这一任务,截取指定数量的前若干个汉字,绝不会出现乱码.
不过mb_substr()函数也有个问题,它是根据字符数截取,如果文章里面夹杂了英文,比如wordpress这一个词就是9个字符了,它比九个汉字的占地面积要小的多,那么夹杂英文的摘要就会显得比全汉字的摘要短(这个都考究,我觉得我是有点bt了 -.-)。解决办法是用mb_strcut()函数,它和mb_substr()函数基本一样,只是是根据字节数截断的,在utf-8里,一个汉字大概占三个字节,一个英文字母占一个字节,这样截出来的汉字文本就会短一些,和英文的长短比较一致。同样,mb_strcut()函数也不会出现乱码.
mb_substr()和mb_strcut()函数共同的问题是,它们是按字符截取的,对英文来说就是按字母截取的,因此有可能把一个单词从中间截断…… 。
另一个问题是mb_substr()和mb_strcut()属于mbstring扩展库,有的空间不支持。对于这种空间商,写信去要求他安装吧,付了钱的就得理直气壮提要求。要求无效的,真得考虑一下这种基本要求都不能满足的空间的质量了.
我写了一个插件,基本仿照Yskin的,不过截取用的是mb_strcut()。并为不支持mb_strcut()的空间自定义了一个函数,抄自网上的mb_substr()函数替代脚本,没找到mb_strcut()的替代脚本,汗。此外还有以下特点: 1,输出的摘要保留原来文章的格式。 2,做了一个判断,如果是存档页(分类存档、每月存档等),输出的摘要较短;如果是首页,输出的摘要较长。 3,如果本来的文章长于摘要,那么最后会显示[……],省略号指向全文的链接。去掉了Yskin原来的统计字数,因为我个人不喜欢;当然要加上也很容易.
。
更新: Advanced Excerpt 是另一个很好的 WordPress 摘要插件,但需要略加改动才适合中文,对它的介绍和修改方法请看保留 html 标签的 wordpress 摘要插件一文。 总结:
为了完美地实现在 wordpress 博客首页、存档页显示摘要,RSS 输出全文,请根据自己的需求下载上述摘要插件中的一个,或下载我写的摘要插件。开启插件之后,如果发现你的首页仍然是全文,那说明你的主题不支持,请根据上面的第二条办法修改主题文件.
最后此篇关于wordpress首页显示摘要的几种方法小结的文章就讲到这里了,如果你想了解更多关于wordpress首页显示摘要的几种方法小结的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我最近发布了一个 problem我正在进行身份验证,但没有收到任何回复,所以我想到了另一种方式来提问而不是多余的。 我在应用程序中看到的内容 documentation是传递访问 token 以进行身
我有一个具有许多不同值的因素。如果执行 summary(factor)输出是不同值及其频率的列表。像这样: A B C D 3 3 1 5 我想制作频率值的直方图,即 X 轴包含发生的不同频率,Y 轴
我有 2 个表,其中包含一组数据,如下所示,我想获得 RESULT 中的结果,该结果将在字段 balance 中进行计算: 我被困在余额字段中,如何让余额运行? tblIn in_date |
我有一个大量重载的方法 MethodA,它由我的 MethodB 文档中的摘要标记引用: /// A link to void MethodB { ... } 注释不应仅依赖于 MethodA 的特
当我将新的 details 标签与 summary 结合使用时,我想禁用生成的输入。我以为 可以解决这个问题,但遗憾的是它不起作用。 如何禁用细节元素? 最佳答案 一个非常简单的方法是只使用 CSS
如何在 Visual Studio 中生成此类摘要? /// /// Returns a number /// /// /// 最佳答案 在你的方法、属性等之前输入///,VS会自动生成注释
关于简单的看似无辜的函数的简单问题:summary。 直到我看到min和max的结果超出了我的数据范围,我才意识到summary有一个指定输出结果精度的参数。我的问题是如何以一种干净、普遍的方式来解决
我有一个数据框 a,其中包含 4 个标识列:A、B、C、D。使用 ddply() 创建的第二个数据框 b 包含每组 的不同 D 的所有值的摘要>A、B、C。第三个数据框 c 包含 b 的子集,其中包含
这个问题在这里已经有了答案: jsdoc: multiline description @property (4 个回答) 4年前关闭。 我正在为我的 javascript 项目使用 Visual S
我有一个向量的 R 摘要: summary(vector) Min. 1st Qu. Median Mean 3rd Qu. Max. 1.000 1.000 2.000 6
我想创建一个新的计算列(另一列文本的摘要)。为了让您重现,我创建了一个 df 作为可重现的示例: df head(df,3) name 1 ZKBOZVFKNJBRSDW
假设我有一棵对象树,其中每个对象都有一个字符串表示。我想在整棵树上创建一个 SHA1 摘要。 最简单的方法是递归遍历树的每个节点。对于每个节点,我将连接(作为简单字符串)所有子节点的 SHA1 摘要,
因此,我试图围绕 MVVM 进行思考,但我发现我的问题多于答案。当涉及到下一步时,这些教程对我来说还远远不够...... 基本上我想要一个项目列表,然后是一种获取每个项目详细信息的方法。 下面是我在网
我希望将 princomp PCA(必须是 princomp)的摘要作为数据框,以便我可以使用 kable 格式化表格以生成报告。 这是我尝试使用的代码,从中应该清楚我想要做什么; kable( as
我们的一页很重。为了减少我们的观察者数量并加速 Angular 摘要周期,我们大量使用了 On-Time-Binding 语法 :: .我们也在使用angular-bind-notifier以避免对我
我正在与我受雇的公司合作,试图为我们的内部库创建更好的文档。我们希望最终检查每个类并更新我们的命名方案(过去有很多草率的代码)。我想要的是能够打印出 javadoc 的摘要。它需要排除页面底部的完整解
我正在尝试创建一个分组摘要,报告每个组中的记录数,然后还显示一系列变量的均值。 我只能弄清楚如何将其作为两个单独的摘要进行处理,然后再将它们合并在一起。这工作正常,但我想知道是否有更优雅的方法来做到这
我正在尝试从 this file 中获取带有百分比的交叉表使用 Hmisc .但为什么是summary()从变量 OCCUPATION 中删除类别(“OTHERS”)? library(Hmisc)
已结束。此问题正在寻求书籍、工具、软件库等的推荐。它不满足Stack Overflow guidelines 。目前不接受答案。 我们不允许提出寻求书籍、工具、软件库等推荐的问题。您可以编辑问题,以便
如标题所示,我想为 PreferenceAcitvity 创建自定义标题栏。我需要在标题下方添加摘要。目前它只会显示一个标题,但我需要一个副标题,就像任何 Preference 都可以有一个摘要。 我
我是一名优秀的程序员,十分优秀!