百独托管7500 紫田网络超高转化播放器收cps[推荐]速盾CDN 免实名免备防屏蔽阿里云 爆款特卖9.9元封顶提升alexa、IP流量7Q5团队
【腾讯云】中小企福利专场【腾讯云】多款产品1折起高防 随时退换 好耶数据小飞国外网赚带你月入万元炎黄网络4H4G10M 99每月
香港带宽CN2/美国站群优惠中客数据中心 服务器租用联盟系统移动广告平台 中易企业专场腾讯云服务器2.5折九九数据 工信部正规资质
腾讯云新用户大礼包代金券高价收cpa注册量高价展示【腾讯云】2核2G/9.93起租服务器找45互联 随时退换阿里云 短信服务 验证秒达

[技术交流] PHP问题请教,关于WordPress调用 [复制链接]
查看:2774 | 回复:10

213

主题

1448

帖子

7243

积分

落伍者(三羊开泰)

Rank: 3Rank: 3

贡献
5275
鲜花
19
注册时间
2006-11-9

落伍手机绑定

发表于 2017-3-20 02:38:32 | 显示全部楼层 |阅读模式 来自 中国山东济宁
本帖最后由 xxwl2008 于 2017-3-20 03:38 编辑

问题很菜,但是我不会PHP,所以来请教大家
我用的一个主题,WordPress首页index.php文件中,如果文章过长,会只显示150个字符,然后加个省略号,如果文章很短没超过150个字符,就不会显示省略号,代码如下
  1. <?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 150,"……"); ?>
复制代码

我想给这个省略号加个链接,点这个省略号就能阅读全文
  1. <a class="imlink_more" href="<?php the_permalink() ?>">……阅读全文</a>
复制代码

但是只是单纯后面加上这行代码,如果文章内容很短没有超过150个字,也会在后面加上“……阅读全文”
请问怎么把这两句合起来?谢谢!
“审查制度,就像奴隶制一样,永不可能合法,即便它作为法律存在过一千多遍。” - 卡尔马克思(1842年5月)
回复

使用道具 举报

落伍网友
落伍网友  发表于 2017-3-20 07:44:45 来自 中国浙江绍兴
没有研究过wordpress~,统计下字符串长度给个判断
<?php
if (strlen(mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 150,"……"))>300){
    echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 150,"……")."<a class='imlink_more' href='<?php the_permalink() ?>'>……阅读全文</a>";
}else{
    echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 150,"……");
}
?>
回复 支持 反对

使用道具 举报

213

主题

1448

帖子

7243

积分

落伍者(三羊开泰)

Rank: 3Rank: 3

贡献
5275
鲜花
19
注册时间
2006-11-9

落伍手机绑定

 楼主| 发表于 2017-3-20 20:57:58 | 显示全部楼层 来自 中国山东济宁
匿名者 发表于 2017-3-20 07:44
没有研究过wordpress~,统计下字符串长度给个判断

谢谢你。
我换了这个代码,始终不会出现“……阅读全文”的链接,还是文章一长只会变成纯字符的省略号。
“审查制度,就像奴隶制一样,永不可能合法,即便它作为法律存在过一千多遍。” - 卡尔马克思(1842年5月)
回复 支持 反对

使用道具 举报

213

主题

1448

帖子

7243

积分

落伍者(三羊开泰)

Rank: 3Rank: 3

贡献
5275
鲜花
19
注册时间
2006-11-9

落伍手机绑定

 楼主| 发表于 2017-3-20 21:49:25 | 显示全部楼层 来自 中国山东济宁
我是这么想的,把1楼第一段代码的省略号,直接换成第二段代码也就是

<?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 150,"<a class="imlink_more" href="<?php the_permalink() ?>">……阅读全文</a>"); ?>

然后页面就出错不显示了,肯定是我写法有问题,有懂的吗?
“审查制度,就像奴隶制一样,永不可能合法,即便它作为法律存在过一千多遍。” - 卡尔马克思(1842年5月)
回复 支持 反对

使用道具 举报

85

主题

4870

帖子

9655

积分

落伍者(三羊开泰)

Rank: 3Rank: 3

贡献
5683
鲜花
28
注册时间
2005-6-1

落伍手机绑定

发表于 2017-3-21 02:18:53 | 显示全部楼层 来自 中国内蒙古
xxwl2008 发表于 2017-3-20 21:49
我是这么想的,把1楼第一段代码的省略号,直接换成第二段代码也就是
  1. <?php
  2. $chek_podddd_content_str = mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0 ,150);

  3. if (strlen($chek_podddd_content_str) ==151) {
  4.         echo $chek_podddd_content_str . '<a class="imlink_more" href="' . get_the_permalink() . '">...阅读全文</a>';
  5. } else {
  6.         echo apply_filters('the_content', $post->post_content);
  7. }
  8. unset($chek_podddd_content_str);
  9. ?>
复制代码


楼主既然使用了 strip_tags 就会造成符合这个标准的内容,被清楚样式。

上面代码,在内容(strip_tags处理过)超过150字符时,显示这150个字符 连带 “...阅读全文”
在内容少于150字符时,完整显示内容。前者不带样式,后者带样式。
回复 支持 反对

使用道具 举报

213

主题

1448

帖子

7243

积分

落伍者(三羊开泰)

Rank: 3Rank: 3

贡献
5275
鲜花
19
注册时间
2006-11-9

落伍手机绑定

 楼主| 发表于 2017-3-22 03:08:34 | 显示全部楼层 来自 中国山东济宁
sinob 发表于 2017-3-21 02:18
楼主既然使用了 strip_tags 就会造成符合这个标准的内容,被清楚样式。

上面代码,在内容(strip_ ...


谢谢,试了一下,还是不行,整个版面都乱了
“审查制度,就像奴隶制一样,永不可能合法,即便它作为法律存在过一千多遍。” - 卡尔马克思(1842年5月)
回复 支持 反对

使用道具 举报

461

主题

7803

帖子

3万

积分

落伍斑竹

有事PM版主:老猫

Rank: 8Rank: 8

贡献
3868
鲜花
286
注册时间
2012-10-27

落伍者站长知道能手QQ绑定落伍手机绑定

发表于 2017-3-22 09:01:19 | 显示全部楼层 来自 中国江苏无锡
wordpress主题模板修改啊。那不是很简单么。
广告位出租!广告位出租!广告位出租!
回复 支持 反对

使用道具 举报

3418

主题

2万

帖子

2万

积分

落伍者(四季发财)

Rank: 4

贡献
2356
鲜花
96
注册时间
2009-11-24

QQ绑定落伍者落伍手机绑定

发表于 2017-3-22 09:08:18 | 显示全部楼层 来自 中国江苏南通
楼主有强迫症
回复 支持 反对

使用道具 举报

85

主题

4870

帖子

9655

积分

落伍者(三羊开泰)

Rank: 3Rank: 3

贡献
5683
鲜花
28
注册时间
2005-6-1

落伍手机绑定

发表于 2017-3-22 18:32:53 | 显示全部楼层 来自 中国内蒙古
xxwl2008 发表于 2017-3-22 03:08
谢谢,试了一下,还是不行,整个版面都乱了

贴的代码,我这边是正常的。
你看下是不是在模板中没套用在适当的位置。
回复 支持 反对

使用道具 举报

213

主题

1448

帖子

7243

积分

落伍者(三羊开泰)

Rank: 3Rank: 3

贡献
5275
鲜花
19
注册时间
2006-11-9

落伍手机绑定

 楼主| 发表于 2017-3-23 02:21:19 | 显示全部楼层 来自 中国山东济宁
sinob 发表于 2017-3-21 02:18
楼主既然使用了 strip_tags 就会造成符合这个标准的内容,被清楚样式。

上面代码,在内容(strip_ ...

我是把1楼第一段代码,直接换成了你的代码,位置还是原来代码的位置
“审查制度,就像奴隶制一样,永不可能合法,即便它作为法律存在过一千多遍。” - 卡尔马克思(1842年5月)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

论坛客服/商务合作/投诉举报:2171544 (QQ)
落伍者创建于2001/03/14,本站内容均为会员发表,并不代表落伍立场!
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论!
落伍官方微信:2030286 邮箱:(djfsys@gmail.com|tech@im286.com)
© 2001-2014

浙公网安备 33060302000191号

浙ICP备11034705号 BBS专项电子公告通信管[2010]226号

  落伍法律顾问: ITlaw-庄毅雄

手机版|找回帐号|不能发帖?|Archiver|落伍者

GMT+8, 2024-3-29 19:40 , Processed in 0.114763 second(s), 32 queries , Gzip On.

返回顶部