今日新帖

今日新帖内容管理

版本 v1.0.02· 胡思乱想 · 18 次获取 · 内容管理
在**列表页**为当日发布的帖子,在标题后面右上角追加一个闪闪发光的「新」字角标,方便访客一眼识别今天的新内容。
免费

详情介绍

今日新帖(todaypost)使用文档

作者:kuakeba.cn | 版本:1.0.0 | 适用于 Zsens Admin 3.0+(PHP 8.2+)

一、插件简介

在列表页为当日发布的帖子,在标题后面右上角追加一个闪闪发光的「新」字角标,方便访客一眼识别今天的新内容。

  • 按自然日判定:以站点时区(默认 Asia/Shanghai)当天 00:00 至次日 00:00 为「今日」,只标记状态正常、未删除的帖子
  • 零侵入:通过 renderAssets 钩子注入样式与脚本,不修改社区插件和主题的任何模板文件
  • 主题兼容:角标作为标题行的独立元素追加,不改变标题字号与行高;标题或标签换行时自动随流排列,不会遮挡或错位
  • 闪闪发光:渐变底色、呼吸辉光、扫光、星芒闪烁四层动效;已适配 prefers-reduced-motion,系统开启「减少动效」时自动静态显示
  • 轻量缓存:当日帖子 ID 服务端缓存 30 秒,新帖发布后最迟约 30 秒出现在列表角标中

二、快速开始

  1. 将 todaypost 目录放入 plugins/(本插件已在该目录)
  2. 后台 应用中心 → 今日新帖 → 安装
  3. 安装后在插件配置中保持「启用角标」开启,保存即可
  4. 刷新前台列表页(首页、分类、标签、搜索等使用主题列表卡的页面),当日发布的帖子标题后会出现「新」字角标

三、配置项说明

配置项说明
启用角标总开关;关闭后列表页不再显示今日新帖角标
角标文字显示在标题右上角的文字,默认「新」,最多 2 个字符

四、实现说明(零侵入机制)

  • 通过 renderAssets 钩子向全站前台输出 <style id="zs-tp-style">、当日帖子 ID 数据与标记脚本
  • 服务端按 strtotime('today') / strtotime('tomorrow') 计算自然日边界,查询 communitytopic 中 status=1、deletetime=0、create_time 落在当天的帖子 ID
  • 前端只匹配列表卡标题 .lb-topic .lb-topic-titlerow > .lb-topic-title,从标题链接中解析帖子 ID,命中当日 ID 才追加角标;侧栏热门、详情页标题、后台页面均不受影响
  • 角标使用 transform: translateY(-6px) 做视觉上移,不参与行高计算;样式全部以 .zs-tp-badge 命名空间隔离,避免与主题样式冲突

五、常见问题

Q:列表里看不到「新」字角标?

  1. 确认插件已安装且「启用角标」为开启状态;
  2. 确认列表中存在今天发布且状态正常的帖子(昨天之前的帖子不会标记);
  3. 新发布的帖子有 30 秒缓存,稍等刷新即可;
  4. 本插件当前针对 liteBBS 主题的列表卡标题(.lb-topic-title)生效,切换到其他主题时若列表结构不同需相应调整选择器。

Q:角标会遮挡标题或标签吗?

不会。角标作为标题行的独立元素追加在标题后面,随 flex 布局自然排列;标题或标签较长导致换行时,角标会跟随换行,不会重叠。

Q:会影响后台或帖子详情页吗?

不会。脚本只处理列表卡 .lb-topic 内的标题;后台不加载前台资源,详情页没有该列表结构。


更新记录 (2)

  • v1.0.02 2026-10-31
    修复兼容问题
  • v1.0.0 2026-10-28
    正式发布
微信客服 微信客服 QQ官方交流群 QQ官方交流群