找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 43|回复: 0

[维护日志] [2026-07-06] [修复] [公告页面标题重复] - 修复公告页面标题显示重复及HTML代码问题

[复制链接]
  • 打卡等级:本地老炮

9336

威望

6876

金钱

1万

贡献

管理员

自由的灵魂

积分
106811
主题
5597
回帖
26608
注册时间
2003-4-10
最后登录
2026-8-11
发表于 2026-7-6 12:53:38 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
[2026-07-06] [修复] [公告页面标题重复] - 修复公告页面标题显示重复及HTML代码问题

标签:标题优化 SEO 公告页面 代码修改

1、问题缘起

在检查论坛公告页面(forum.php?mod=announcement&id=35)的源码时,发现页面标题存在重复现象:

  1. <title>点拨论坛,菜鸟家园 - 点拨论坛,菜鸟家园</title>
复制代码


同时,修改之后若原公告标题中包含 HTML 标签(<b><font>)会被直接输出到页面标题中,影响浏览器标签页显示和搜索引擎索引。

问题表现
  • 标题重复:站点名称 - 站点名称
  • HTML 代码外露:标题中包含 <b><font> 等标签


2、解决方案

(1)简要技术分析

Discuz! 页面标题由 header_common.htm 模板中的 $navtitle 变量控制。公告页面 forum_announcement.php 未设置 $navtitle,导致模板使用默认的 $_G['setting']['bbname'] 作为标题,造成重复。通过在该文件中为公告页面设置 $navtitle,并使用 strip_tags() 过滤 HTML 标签,即可解决。

(2)修改文件列表

操作文件路径
修改/www/wwwroot/www.dianbo.org/source/module/forum/forum_announcement.php


(3)关键代码段

修改前
  1. $annid = isset($_GET['id']) ? intval($_GET['id']) : 0;

  2. include template('forum/announcement');
复制代码


修改后
  1. $annid = isset($_GET['id']) ? intval($_GET['id']) : 0;

  2. // 设置页面标题
  3. if (!empty($announcelist)) {
  4. if ($annid && !empty($announcelist[0]['subject'])) {
  5. $navtitle = strip_tags($announcelist[0]['subject']);
  6. } else {
  7. $navtitle = lang('forum/misc', 'announcement');
  8. }
  9. }

  10. include template('forum/announcement');
复制代码


3、最终实现效果

场景修改前修改后
单条公告标题点拨论坛,菜鸟家园 - 点拨论坛,菜鸟家园公告标题 - 点拨论坛,菜鸟家园
公告列表标题点拨论坛,菜鸟家园 - 点拨论坛,菜鸟家园公告 - 点拨论坛,菜鸟家园
公告含 HTML 标签<title><b><font color="#FF6666">不要拒收...</title><title>不要拒收论坛通知邮件! (点此查看建议做法) - 点拨论坛,菜鸟家园</title>


4、重要技术沉淀

踩坑点

踩坑正确做法
公告标题直接输出到 $navtitle,导致 HTML 代码外露使用 strip_tags() 过滤 HTML 标签后再赋值
header_common.htm 会默认使用站名作为标题在页面文件中显式设置 $navtitle,覆盖默认值
未区分单条公告和公告列表的标题通过 $annid 判断当前是单条公告还是列表,分别设置不同标题


相关文件
  • header_common.htm 中的标题生成逻辑:


  1.   <title><!--{if !empty($navtitle)}-->$navtitle <!--{/if}--><!--{if empty($nobbname)}-->- $_G['setting']['bbname']<!--{/if}--></title>
复制代码


5、进一步优化可能性

  • 其他页面(如主题列表、帖子内容页)的标题格式检查,确保无重复或异常
  • 后台 SEO 设置中为公告页面增加独立的标题格式配置项
  • 统一为所有动态页面设置规范的标题格式



不懂就搜!点此搜点拨论坛。如果本坛没有,请尝试点此问AI,或跟帖提问。
发帖前注意看置顶帖
不定期借助AI对点拨论坛陈年老帖进行挖坟回复,打扰勿怪!
有问题请直接提问,欢迎注册本论坛!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|点拨论坛 |网站地图|网站地图

GMT+8, 2026-8-11 21:40 , Processed in 0.035582 second(s), 7 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表