结论先说:在 WordPress 里让同一篇内容进入多个栏目,不能依靠复制文章或依赖栏目归档页自动去重。正确做法是让文章只存在一个规范地址,其他栏目用分类、标签或查询条件把它“调”出来。换空间时,这个结构必须原样迁移,否则多栏目展示会变成多份独立内容,后续改一处、漏三处。
换空间前一切正常,换完后发现同一篇稿子在首页、专题页和栏目页显示的内容不一致,编辑改了其中一个,另外几处还是旧标题或旧摘要。常见解释有两种:一是迁移时把同一篇文章复制成了多个独立文章,各自有独立 ID 和固定链接;二是查询或缓存层出了问题,数据本身只有一份,但页面渲染时读到了不同来源。
这两种原因的处理方式完全不同。前者是内容结构被破坏,必须回到单一来源;后者是读取链路问题,改内容没有用,要查查询条件和缓存刷新。
不要只看前台页面,去看后台文章列表和固定链接,这组证据足以区分:
换空间时最容易踩的坑,是把旧站的栏目结构在新站重新建了一遍,同时把文章逐个复制进不同栏目。这样文章数量会随栏目数成倍增长,规范地址也不再唯一。判断方法很简单:看文章总数是否明显多于原站,以及是否存在标题相同但别名不同的记录。
核心原则是:一篇文章只有一个永久地址,多个栏目只是它的分类归属或展示入口。具体可以这样做:
这样做之后,修改标题或正文只需改一处,所有调用它的栏目页会读取同一份数据。假设某站有 40 篇文章,其中 12 篇需要同时出现在三个栏目里。如果采用复制方式,文章记录会变成 40 加 24 条重复项;如果采用多分类方式,记录仍是 40 条,只是分类关系多了几组。这个对比说明的是记录数量和维护点数量的差别,不是排名或流量差别。
单一来源方案在多数内容站成立,但有两种情况需要另做判断。第一种是不同栏目需要展示完全不同的标题、摘要或正文版本,这时同一篇文章无法同时满足,应该考虑用自定义字段或独立内容类型,而不是复制文章。第二种是栏目页由外部系统生成,WordPress 只是数据源之一,这时要确认外部系统是读取规范地址还是抓取页面内容。
还有一个容易被忽略的边界:如果原站本身就存在大量重复文章,换空间时不要为了“看起来整齐”而强行合并。合并前要确认这些重复项是否各自被外部链接引用,以及合并后旧地址是否还能正确跳转。否则单一来源是建立了,但旧入口会失效。
迁移完成后,先不要急着看前台效果,按下面顺序检查:
这个验证动作的结果会直接决定下一步:如果后台只有一条记录但前台不同步,下一步查缓存和查询模板;如果后台出现多条记录,下一步先处理重复数据,再谈展示。顺序反了,就会在错误的方向上反复调整模板。