php显示标题控制长度,wordpress控制文章标题长度的问题

CSS法控制文章标题长度

这个也不难,在文章标题的CSS里加上如下代码就可以了:

display: block;

width: 150px;

overflow: hidden;

white-space: nowrap;

-o-text-overflow: ellipsis;

text-overflow: ellipsis;

其中,width属性是用来 定义宽度的,文章标题超出这个宽度的部分会用…替换。

优点:美观。

缺点:文章标题显示不 全;搜索引擎看到的是不完整标题,不利于SEO,firefox不支持ellipsis

PHP法控制文章标题长度

想要自定义文章标题在首页或者其它页显示的字数长度,首先要在functions.php里面加如下代码:

PHP

function the_title_limit($before = '', $after = '', $echo = true, $length = true) {

$title = get_the_title();

if ( $length && is_numeric($length) ) {

$title = substr( $title, 0, $length );

}

if ( strlen($title)> 0 ) {

$title = apply_filters('the_title_limit', $before . $title . $after, $before, $after);

if ( $echo )

echo $title;

else

return $title;

}

}

?>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

functionthe_title_limit($before='',$after='',$echo=true,$length=true){

$title=get_the_title();

if($length&&is_numeric($length)){

$title=substr($title,0,$length);

}

if(strlen($title)>0){

$title=apply_filters('the_title_limit',$before.$title.$after,$before,$after);

if($echo)

echo$title;

else

return$title;

}

}

?>

然后在首页或者其它要调用的地方加入

数字“18”为标题字符数,可以随意改。

这个方法有个缺点,就是不支持中文字符,截取时出现乱码。

假如strlen 和 substr 换成 mb_strlen 和 mb_substr 试试, 需要服务器PHP开启mbstring扩展。

XML法控制文章标题长度

大家 应该都知道,如果一个盒子中的文字超过了例子的宽度,我们可以用overflow:hidden将其隐藏起来

不过这样影响美观,这时我们就可以用text-overflow:ellipsis将超出的部分用”…”给替换掉.

当然.其中少不了white-space:nowrap这一句,它是让文本不换行.

嗯,说的是很不错,可惜的是,我们口中的“标准浏览器——firefox”不支持这个属性.

就好像IE6不支持png透明一样.但高手们就解决了这个问题;

首先要写好上面的三个属性

把下面的文字复制到记事 本,保存为xml格式

然后,在css文件中加入 这一句

.ellipsis{text-overflow:ellipsis;-moz-binding:url(../ellipsis.xml#ellipsis);

然后把想要用省略号隐藏 的标签加个class

这些标签可能会比较多,所以推荐用js添加

用jquery如下

$(function(){

$(‘#header,h1,li’).addClass(‘ellipsis’);

})

这样就能解决了,但这样的话,应该了这个样式的文本是不能选中的,这也是这个方法不够完善的地方

程序本天成,妙手偶得之!我们只是代码的搬运工!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值