WordPress 的日志摘要方法

林继 WordPress 2,592 共写了551个字 (2010-08-26 12:53:40) 没有评论 打印 扫描二维码 百度已收录

出处:来自网络
何为同时使用不同的日志摘要?比如说,我们都知道 WordPress 在编辑新日志的时候有自定义摘要功能,不过不是所有用户都会使用该功能,也不是所有用户在每篇文章都需要该功能。这时候我们就需要,在用户自定义摘要的时候,则首页的该日志摘要显示由用户自定义的摘要,当用户没有自定义摘要的时候,则显示由 More 标签截断的摘要部分,或者显示以固定字符数自动截取的日志摘要部分。

用文字表达起来可能有点绕,还是用代码吧,我写的比较简单,这样条理也比较明朗一些:

  1. <?php
  2. //获取自定义摘要的内容
  3. $myExcerpt = $post->post_excerpt;
  4. //如果自定义摘要内容为空
  5. if ( empty ( $myExcerpt ) ) {
  6.     //方法一、自动截断日志前300个字符作为摘要,支持中文截断
  7.     echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 300,"......");
  8.     //方法二、习惯用 More 标签作为日志的童鞋可以用这个方法,将下面 the_content() 前的注释去掉并且把方法一注释
  9.     //the_content();
  10. } else {
  11.     //摘出自定义摘要
  12.     echo $myExcerpt."......";
  13. }
  14. ?>

都已经配上注释了,应该很好理解吧,把以上代码替换 index.php 中原摘要输出的代码,比如:

  1. <?php the_content(); ?>
  2. 或者:
  3. <?php the_excerpt(); ?>

需要注意的是,其中方法一中的 mb_strimwidth 函数是 PHP5 特有的,在 Win主机和 PHP4 的主机上都不能用,会出现乱码。不过现在大家的 WordPress 版本应该都上 2.9+ 了吧,Wordpress 2.9+ 默认是要求 PHP5 的,所以一般可以放心使用。

  使用的方法也是很简单,如果需要对某篇日志进行自定义摘要,则只需在编辑日志的时候将需要的内容(支持 HTML)输入到正文编辑区域下方的“摘要”栏里即可;如果无需自定义摘要则留空。

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

< >