12下一页
返回列表 发帖
查看: 1654|回复: 11

[已解决] $forum['lastpost']['author'],怎么截取字符数?求大佬指教

BQQ

12

主题

73

回帖

99

积分

渐入佳境

贡献
0 点
金币
10 个
发表于 2022-11-8 03:56:44 | 显示全部楼层 |阅读模式
在discuz.htm模板中调用这个函数(用户名),但是有些用户名太长了,想做个截取,最多取前4个汉字显示,要怎么写呢?

大佬们求指教。
1 贡献

最佳答案

只是想控制宽度的话,这个位置推荐使用CSS来控制
给用户名增加一个样式表控制(.athw)这个名称自己随意取,设置100px为适合你的宽度即可
  1. .athw{
  2. width: 100px;
  3. display: inline-block;
  4. overflow: hidden;
  5. white-space: nowrap;
  6. text-overflow: ellipsis;
  7. }
复制代码


改成如下
  1. <!--{if $forum['lastpost']['author']}--><span class="athw">$forum['lastpost']['author']</span><!--{else}-->匿名<!--{/if}
复制代码
回复

使用道具 举报

BQQ

12

主题

73

回帖

99

积分

渐入佳境

贡献
0 点
金币
10 个
 楼主| 发表于 2022-11-11 11:45:40 | 显示全部楼层
  1. <!--{if $forum['lastpost']['author']}-->$forum['lastpost']['author']<!--{else}-->匿名<!--{/if}
复制代码

原来的调用是这么写的,但是有的用户名有8个汉字,太长了,我想截取前4个汉字,多余的用...替代。
但是不知道该怎么改,有没有技术大佬在线,求帮助。
回复 支持 反对

使用道具 举报

10

主题

1321

回帖

2298

积分

应用开发者

DSVUE

贡献
62 点
金币
448 个
QQ
发表于 2022-11-11 12:21:24 | 显示全部楼层
只是想控制宽度的话,这个位置推荐使用CSS来控制
给用户名增加一个样式表控制(.athw)这个名称自己随意取,设置100px为适合你的宽度即可
  1. .athw{
  2. width: 100px;
  3. display: inline-block;
  4. overflow: hidden;
  5. white-space: nowrap;
  6. text-overflow: ellipsis;
  7. }
复制代码


改成如下
  1. <!--{if $forum['lastpost']['author']}--><span class="athw">$forum['lastpost']['author']</span><!--{else}-->匿名<!--{/if}
复制代码
DSVUE-专业建站服务 | 最新DZ插件和模板  | 业务联系QQ:631847671 | 技术支持交流Q群:476397924
承接APP、DZ插件开发、PHP二次开发、网站模板制作、网站搬家、各类网站疑难杂症解决(谢绝担保交易,需支付定金)
回复 支持 反对

使用道具 举报

18

主题

1819

回帖

2734

积分

应用开发者

贡献
50 点
金币
574 个
QQ
发表于 2022-11-11 15:14:46 | 显示全部楼层
  1. <!--{echo cutstr($forum[lastpost][author], 10)}-->
复制代码


给 模板里面用
无限星辰工作室  好集导航 免费API
服务Discuz建站|定制|小程序|APP定制|故障维修|搬家|运维|挂马清理|防护|性能优化|安全运维|
服务理念:专业 诚信 友好QQ842062626 服务
回复 支持 1 反对 0

使用道具 举报

BQQ

12

主题

73

回帖

99

积分

渐入佳境

贡献
0 点
金币
10 个
 楼主| 发表于 2022-11-11 19:37:41 | 显示全部楼层

大佬就是我和你QQ上聊的,这个截取方法已经确认是错误的,用这个方法,什么都没有输出。
回复 支持 反对

使用道具 举报

17

主题

566

回帖

1814

积分

应用开发者

贡献
63 点
金币
902 个
QQ
发表于 2022-11-12 14:48:00 | 显示全部楼层
  1. <!--{if $forum['lastpost']['author']}-->
  2.         <!--{eval echo cutstr($forum['lastpost']['author'], 10);}-->
  3. <!--{else}-->
  4.         匿名
  5. <!--{/if}-->
复制代码
回复 支持 反对

使用道具 举报

BQQ

12

主题

73

回帖

99

积分

渐入佳境

贡献
0 点
金币
10 个
 楼主| 发表于 2022-11-12 15:27:31 | 显示全部楼层

大佬,这个截取方法经测试,也一样不能输出内容。
回复 支持 反对

使用道具 举报

17

主题

566

回帖

1814

积分

应用开发者

贡献
63 点
金币
902 个
QQ
发表于 2022-11-12 16:12:31 | 显示全部楼层
source\function\function_forumlist.php
  1. $lastpost['author'] = '<a href="home.php?mod=space&username='.rawurlencode($lastpost['author']).'">'.$lastpost['author'].'</a>';
复制代码
修改为
  1. $lastpost['author'] = '<a href="home.php?mod=space&username='.rawurlencode($lastpost['author']).'">'.cutstr($lastpost['author'], 10).'</a>';
复制代码
回复 支持 反对

使用道具 举报

BQQ

12

主题

73

回帖

99

积分

渐入佳境

贡献
0 点
金币
10 个
 楼主| 发表于 2022-11-12 16:27:42 | 显示全部楼层
1314学习网 发表于 2022-11-12 16:12
source\function\function_forumlist.php
修改为

谢谢大佬,大佬辛苦。

但是我只是在discuz.htm这个模板页面上使用。这样一修改,是不是所有页面的这个标签都被截取了
回复 支持 反对

使用道具 举报

17

主题

566

回帖

1814

积分

应用开发者

贡献
63 点
金币
902 个
QQ
发表于 2022-11-12 16:34:13 | 显示全部楼层
BQQ 发表于 2022-11-12 16:27
谢谢大佬,大佬辛苦。

但是我只是在discuz.htm这个模板页面上使用。这样一修改,是不是所有页面的这个标 ...

只涉及板块
回复 支持 反对

使用道具 举报

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

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2024-4-14 12:20 , Processed in 0.057972 second(s), 8 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2024 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表