帝国CMS相关链接相关文章是如何调用的

作者:凡帝网 分类:帝国CMS教程 发布时间:2026-09-30 浏览量:24 次

"相关文章"是帝国CMS的内容页重要功能,但相信很多人在用的时候会有点理不清用法。
首先在文章详情页展示与当前文章有关联的其他文章列表。有两种模式:

  • 按关键字查询:根据文章关键字(keyboard)自动匹配
  • 手动相关连接:管理员手工指定相关文章ID

通过 info_diyotherlink字段区分两种模式,在文章发布/编辑时配置的。

配置入口

文章发布/编辑页面(AddNews.php)有两个相关字段:

字段 类型 说明
info_diyotherlink checkbox 是否手动设置相关文章(1=手动,0=自动)
info_keyid text/hidden 相关文章ID列表,逗号分隔

点击"相关链接"按钮会弹出选择窗口,可以按标题/关键字/搜索文章并勾选:

不管哪种方式,最终都会把关联的文章ID存到 keyid 字段。

批量更新相关链接

还有个"批量更新相关链接"功能,针对的是"按关键字查询"的文章(info_diyotherlink=0),重新根据当前关键词计算一次 keyid。手动相关连接的文章会被跳过。


典型场景:

  1. 给文章加了关键词"AI" → 需要重算 keyid 才能关联到含"AI"的文章
  2. 新发布了一批文章 → 旧文章的 keyid 没包含新ID → 批量更新后就能关联上

模板调用

在模板中用 [otherlink] 标签输出相关文章列表:

[otherlink]标签模板ID,操作对象,调用条数,标题截取字数,是否显示栏目名,操作类型,只显示标题图片的信息[/otherlink]
参数 说明
标签模板ID 后台创建的标签模板ID
操作对象 对应操作类型的表名/栏目ID/标题分类ID,空则默认
调用条数 显示多少条
标题截取字数 标题最多显示多少字
是否显示栏目名 0=不显示,1=显示
操作类型 0=默认,1=按表,2=按栏目,3=按标题分类
只显示标题图片的信息 0=不限,1=只显示有标题图片的

操作对象

操作对象填什么取决于操作类型:

操作类型 操作对象含义
0 忽略,不用填
1 表名,如 "news"
2 栏目ID,如 "5"
3 标题分类ID,如 "3"

操作对象本身没有固定含义,它是什么取决于操作类型。

查询逻辑

操作类型=0:按关键字查询直接读 keyid 字段,查当前文章所属模型表。keyid 在发布/编辑时由自动计算生成,也可通过上面提到的批量更新重新计算。

操作类型≠0:根据操作类型确定表和范围,然后用文章的 keyboard 关键字做实时 LIKE 匹配。匹配字段由后台"相关链接依据"配置决定(只匹配关键字 / 只匹配标题 / 两者都匹配)。这种方式不依赖 keyid,每次都是实时查。

微信扫码咨询

微信二维码
↑