WordPress自动截取文章标题字数的4种方法
今天跟大家分享一个NB的wordpress MB函数,来限制显示字数,包括文章、标题、摘要···几乎万能!
<?php echo mb_strimwidth(strip_tags(apply_filters(‘the_excerpt’,
$post->post_excerpt)), 0, 100); ?>
比如你的一段摘要有168个字,但是你为了界面好看,只显示100个字是最完美的,那么你就要控制一下它了。这款代码你只要用它替换掉原来的摘要代码就行了。
那么,亲你会说,且不过是个摘要而已,有必要么?要是随便搞个什么插件也行呀!笔丢了想说:“在wordpress世界里,能不用插件就不用,因为插件会拖慢网站速度。”
其次,这个的灵活性在于你只要修改一下其中的词,就能用在其他地方了!
标题:
<?php echo mb_strimwidth(strip_tags(apply_filters(‘the_title’,
$post->post_title)), 0, 30); ?>
归档:
<?php echo mb_strimwidth(strip_tags(apply_filters(‘the_archives’,
$post->post_archives)), 0, 30); ?>
文章:
<?php echo mb_strimwidth(strip_tags(apply_filters(‘the_content’,
$post->post_content)), 0, 30); ?>
红色的是要显示的字符数(两字符=一中文),绿色的是某些部位的代名词(这个我也说不好,呵呵!),所以把他们设置成为你想的那个就行啦,触类旁通,其他的亲可以多多尝试哦!
使用wp_trim_words()截取
-
<?php
-
echo wp_trim_words( get_the_content(), 100 ); // 文章内容
-
echo wp_trim_words( get_the_excerpt(), 100 ); // 文章摘要
-
echo wp_trim_words( get_the_title(), 100 ); // 文章标题
-
?>
默认用法:
<?php $trimmed = wp_trim_words( $text, $num_words = 55, $more = null ); ?>
通过原生函数截取
-
function customTitle($limit) {
-
$title = get_the_title($post->ID);
-
if(strlen($title) > $limit) {
-
$title = substr($title, 0, $limit) . '...';
-
}
-
-
-
echo $title;
-
}
然后在输出文章标题的地方,使用下面的代码:
-
<?php customTitle(30); ?>
注:30为标题字数,请根据自己的需求修改。如果标题字数小于30,就显示完整标题;如果字数大于30,就截取30个字符,末尾自定添加…
通过自定义函数截取
-
-
-
//标题截断
-
function cut_str($src_str,$cut_length){$return_str='';$i=0;$n=0;$str_length=strlen($src_str);
-
while (($n<$cut_length) && ($i<=$str_length))
-
{$tmp_str=substr($src_str,$i,1);$ascnum=ord($tmp_str);
-
if ($ascnum>=224){$return_str=$return_str.substr($src_str,$i,3); $i=$i+3; $n=$n+2;}
-
elseif ($ascnum>=192){$return_str=$return_str.substr($src_str,$i,2);$i=$i+2;$n=$n+2;}
-
elseif ($ascnum>=65 && $ascnum<=90){$return_str=$return_str.substr($src_str,$i,1);$i=$i+1;$n=$n+2;}
-
else {$return_str=$return_str.substr($src_str,$i,1);$i=$i+1;$n=$n+1;}
-
}
-
if ($i<$str_length){$return_str = $return_str . '...';}
-
if (get_post_status() == 'private'){ $return_str = $return_str . '(private)';}
-
return $return_str;};
- 将上面的代码添加到主题的 functions.php 最后一个 ?> 的前面,然后在需要调用的地方添加下面的代码即可:
-
<?php echo cut_str($post->post_title,80); ?>
-
通过CSS来“截取”
-
.post-title{
-
width:250px; /* 限制宽度(可选) */
-
white-space:nowrap; /* 禁止自动换行 */
-
overflow:hidden; /* 隐藏溢出的内容 */
-
text-overflow:ellipsis; /* 溢出文本使用...代替 */
-
}
- 打开你主题的functions.php文件,添加下面的代码到里面:
-
function ODD_title($char) { $title = get_the_title($post->ID); $title = substr($title,0,$char); echo $title; }
- 然后在需要调用文章标题的地方使用下面的代码即可:
1
<?php ODD_title(20); ?>
-
-
-
浅唱6(微信/QQ号:909912499),欢迎分享本文,转载请保留出处!部分内容来自网络,如有侵权请联系删除处理!
相关信息
本站提供代码修改,dedecms,WordPress仿站二次开发 / PHP网站建设以及SEO优化等网络营销推广等服务。
如有需要请加QQ: 909912499