17713433920 info@mac163.com

在做WordPress企业主题开发的时候,一般都会有几种文章类型,对于WordPress而言,设置摘要长度比较规范的用法是通过钩子 excerpt_length 去实现。那么我们的实现前台文章显示摘录长度设置,更好的是实现不同文章类型不同摘录长度。

WordPress 不同文章类型设置不同摘要长度
WordPress 不同文章类型设置不同摘要长度

设置摘要长度
比如常用代码范例如下:

/**
 * 通过钩子设置摘要长度为 30
 *
 * @param int $length Excerpt length.
 * @return int (Maybe) modified excerpt length.
 */
function wpdaxue_excerpt_length( $length ) {
    return 30;
}
add_filter( 'excerpt_length', 'wpdaxue_excerpt_length');

设置摘要的更多字符
通常,我们还需要借助 excerpt_more 钩子去自定义摘要后面的字符,默认为 […] ,如果要改为 … ,可以使用下面的代码范例:

/**
 * 钩子设置摘要后的更多字符
 */
 function wpdaxue_excerpt_more( $more ) {
     return '...';
 }
 add_filter( 'excerpt_more', 'wpdaxue_excerpt_more' );

不同文章类型设置不同摘要长度
言归正传,要为不同的文章类型设置不同的摘要长度,可以通过判断文章类型来分别定义,代码范例如下:

/**
 * 不同文章类型设置不同摘要长度
 */
function wpdaxue_variable_excerpt_length( $length ) {
  // 使用全局变量 $post 检测当前文章所属的文章类型
  global $post;
  
  // 针对不同的文章类型设置不同长度
  if ( 'post' === $post->post_type ) {
    return 32;
  } else if ( 'page' === $post->post_type ) {
    return 65;
  } else if ( 'products' === $post->post_type ) {
    return 75;
  } else {
    return 80;
  }
}
add_filter( 'excerpt_length', 'wpdaxue_variable_excerpt_length');

微信二维码

微信扫描二维码联系我们!
我们在微信上24小时期待你的声音
提供外贸路由器设备产品,轻松翻墙,解答:WP主题推荐,WP网站建设,Google SEO,百度SEO,专业服务器环境搭建等!


需要提供WordPress主题/插件的汉化服务可以随时联系我们!另外成品WordPress网站以及半成品WordPress网站建设,海外Google SEO优化托管服务,百度SEO优化托管服务,Centos/Debian服务器WP专用环境搭建,WP缓存服务器搭建,我们都是你的首选,拥有多年WP开源程序服务经验,我们一直在坚持客户体验,没有最好,只有更好!
回到顶部