功能预览
隐藏字段拦的是不看页面的批量脚本,校验服务拦的是会填表的自动化,两层合起来仍拦不住伪装成正常留言的推广文本,还需要内容侧的敏感词过滤与人工审核兜底。本文给出三层防护的分工、后台开启顺序,以及用留言状态筛出来做验收的办法。
防垃圾留言够不够,取决于垃圾从哪一层来。表单上放一个隐藏蜜罐字段再接一层校验服务,能压掉大批量脚本提交和会自动填表的机器人,但拦不住伪装成正常提问、里面夹带推广联系方式的人工或半自动留言——那部分要靠内容侧过滤加人工审核。所以这两层是必要但不充分,防垃圾留言的完整分工应当是三层:入口层拦提交方式,内容层拦文本本身,后台层留可核对的处置记录。
| 防护层 | 拦什么 | 拦不住什么 | 对应的核对方式 |
|---|---|---|---|
| 隐藏字段(蜜罐) | 不渲染页面、按字段名直接批量提交的脚本 | 会解析页面、跳过隐藏字段脚本 | 看被拦提交的比例是否随规则上线变化 |
| 校验服务 | 会填表、需要判定交互的自动化提交 | 人工提交与低成本绕过判定的样本 | 按留言来源抽样统计通过率 |
| 内容过滤与审核 | 混在正常文本里的推广词、违规表述 | 全新表述、变体写法 | 按待发布与正式状态筛出核对 |
隐藏字段对真人无感,是因为它对正常填写者不产生任何交互;它的作用面很窄但成本极低。校验服务的作用面更宽,代价是判定规则不在站点自己手里,站点只能看到结果,所以要靠自己的日志去核对效果。
垃圾留言里增长最快的部分并不是「一眼假」的推广长串,而是伪装成提问或感谢、末尾带一句联系方式的短文本。这一类在入口层完全正常:字段填得对、交互也过了。要拦住它,只有两条路——内容侧过滤和人工审核。
AnQiCMS 的内容安全设置里,敏感词过滤与关键词替换处理的是已知词表,命中即拦截或替换;内容审核处理的是未知表述,靠人判断。两者配合的价值在于:词表负责高频重复,人工负责新型变体,谁都不必处理全部留言。
顺序建议按「先记录、再拦截」来做。第一步把留言与附件的入口状态理清,后台的留言列表(guestbook)能看到每条留言的当前状态,这是所有验收的数据基础。第二步启用表单侧的验证码校验,即 reCAPTCHA 接入,把自动化提交压下去。第三步配置敏感词过滤与关键词替换,把词表覆盖到已知的推广表述。第四步固定人工审核的节奏,让状态流转成惯例而不是临时动作。
倒过来做会出问题:先上拦截再补记录,一旦误拦了正常用户,没有可比对的基线来判断拦截是否过宽。
验收靠状态而不是靠感觉。文档状态分为正式文档、草稿、待发布与回收站,留言侧同样要能按状态筛:待发布的积压量反映拦截效果,被移入回收站的量反映误拦风险。固定每周看一次这两个量,比每天看总量更有信号。
另一个必看的点是拦截的漏网样本。把「已发布但事后被举报」的留言单独统计,用来补充词表——这是敏感词过滤能持续有效的原因,词表要由实际漏网样本驱动更新。
对纯脚本批量提交够用,对其他都不够。隐藏字段是成本最低的一层,通常作为起点而不是终点。
要。校验服务给出的是提交是否自动化的判断,不判断文本内容是否合规,推广文本和违规表述仍然需要内容侧处理。
看误拦代价:待发布积压量突然上升而正常用户反馈变少,通常说明规则过紧。这时候应当回到留言列表按状态核对样本,而不是直接放宽全部规则。
不能,它是词表机制,只覆盖已知表述。新型变体、伪装成正常提问的推广文本要靠人工审核发现后再补进词表。
预览
小范围的标题样式、段落排版与模块顺序调整,可以用 AI 可视化模板编辑在预览里直接说改动意图完成,改完再回落到代码确认;涉及内容模型字段与页面结构的改动仍需回到字段定义。本文说明两种改法的分界与回退做法。
预览
自定义字段适合承载可结构化、可比较、可筛选的信息,例如参数、适用范围、时间与联系方式类别;大段正文、频繁改动的营销文案和任何凭据类内容不适合放进字段。列表页取用字段通常有两种做法:在模板里按字段名直接输出,或作为筛选与排序条件参与列表生成,两者对字段类型的要求不同。
预览
WordPress 内置六类默认角色,其中编辑可以发布并管理包括他人文章在内的内容,作者只能发布自己的文章,投稿者能写和管理自己的文章但不能发布,订阅者只能管理个人资料。这种切法背后是「谁能对外生效」的控制点。小团队按谁能发布、谁能改别人的稿、谁能上传附件三问来切即可,AnQiCMS 用用户组权限、内容审核与草稿到回收站的状态流覆盖同样需求。