在织梦CMS中,友情链接功能虽然核心,但其实现方式和文件结构在不同版本中略有差异,我们将从核心文件、后台管理文件、前台调用文件以及自定义插件文件四个方面来全面解析。

(图片来源网络,侵删)
核心数据表
无论文件如何变化,友情链接的数据都存储在数据库的 #@__flink 表中,这个表是所有友情链接功能的基础。
- 表名前缀:
#@__是织梦默认的数据表前缀,在你的安装中可能是dede_或其他自定义前缀。 - 主要字段:
id: 链接ID,主键。typeid: 链接分类ID,用于将链接分组。url: 链接地址。webname: 网站名称。logo: 网站Logo地址。msg: 备注信息。email: 网站管理员邮箱(用于验证)。linktype: 链接类型(1为文字链接,2为图片链接)。ischeck: 是否通过审核(0为未审,1为已审)。dtime: 添加时间。
理解这个表结构,对于后续修改和调用至关重要。
后台管理相关文件
这些文件用于在网站后台管理友情链接,包括添加、修改、删除、分类管理等。
核心管理文件
- 文件路径:
/dede/MakeFriend.php - 功能:这是友情链接管理的主页面,你可以看到所有已添加的友情链接列表,并提供“增加新链接”、“修改”、“删除”等操作入口。
- 关键操作:
- 审核:管理员在这里可以审核用户提交的友情链接申请。
- 批量操作:支持批量删除、批量审核等。
添加/编辑链接文件
- 文件路径:
/dede/flink_add.php(添加) - 文件路径:
/dede/flink_edit.php(编辑) - 功能:
flink_add.php:提供表单,让管理员手动添加新的友情链接。flink_edit.php:加载现有链接的信息,并允许管理员进行修改。
处理添加/编辑的提交文件
- 文件路径:
/dede/flink_add.php(处理逻辑在文件末尾) - 文件路径:
/dede/flink_edit.php(处理逻辑在文件末尾) - 功能:这两个文件不仅负责显示表单,还包含了表单提交后的数据处理逻辑,它们会接收表单数据,验证,然后插入或更新
#@__flink数据表。
分类管理文件
- 文件路径:
/dede/flinktype.php - 功能:管理友情链接的分类,你可以在这里添加、修改、删除链接的分类(如“门户网站”、“技术博客”等),方便对链接进行分组管理。
前台调用相关文件
这些文件用于在网站前台页面(如页脚)展示友情链接。

(图片来源网络,侵删)
核心调用标签
织梦的核心功能不依赖于特定的PHP文件来调用链接,而是通过其强大的自定义标签实现的。
-
基本调用标签:
{dede:flink row='24'/}row='24':表示显示24条友情链接。
-
带分类的调用标签:
{dede:flink row='12' type='text' typeid='1'/}typeid='1':只显示分类ID为1的友情链接。type='text':只显示文字链接,如果改为type='image',则只显示图片链接。
-
更灵活的调用标签(推荐): 这个标签可以让你自定义每条链接的HTML输出格式,非常灵活。
(图片来源网络,侵删){dede:flink row='12' type='text'} <a href="[field:url/]" target="_blank">[field:webname/]</a> {/dede:flink}[field:url/]:输出链接地址。[field:webname/]:输出网站名称。[field:logo/]:输出Logo地址。
调用逻辑所在文件
虽然前台不直接调用PHP文件,但这些标签的渲染逻辑是由织梦的核心类文件处理的。
- 核心解析类:
/include/taglib/flink.lib.php- 当你在模板中使用
{dede:flink}标签时,织梦会调用这个文件来解析标签,从数据库中查询数据,并最终生成HTML代码返回给前端。 - 如果你需要修改友情链接的调用逻辑(修改排序方式、增加自定义字段等),就需要修改这个文件。
- 当你在模板中使用
自定义友情链接插件文件
除了系统自带的功能,很多开发者会制作或下载第三方友情链接插件,这些插件通常以独立模块的形式存在,拥有自己的文件结构。
一个典型的自定义插件文件结构如下:
/plus/ <-- 或 /dede/plugin/
|-- flink/ <-- 插件目录
|-- index.php <-- 插件前台展示页面
|-- admin/ <-- 插件后台管理目录
| |-- config.php <-- 插件配置文件
| |-- main.php <-- 后台主管理界面
| |-- add.php <-- 添加链接界面
| `-- edit.php <-- 编辑链接界面
|-- images/ <-- 插件用到的图片
|-- install.php <-- 插件安装脚本
|-- uninstall.php <-- 插件卸载脚本
`-- sql/ <-- 插件安装时需要执行的SQL文件
|-- install.sql
`-- uninstall.sql
自定义插件特点:
- 独立性:不直接修改织梦核心文件,升级织梦时不易丢失修改。
- 功能扩展:可以实现更复杂的功能,如:
- 在线申请:用户在前台可以提交友链申请,无需后台手动添加。
- 数据缓存:自动缓存友情链接数据,减轻数据库压力。
- 更多字段:可以增加QQ、微信、简介等自定义字段。
- 样式美化:提供更丰富的前端展示样式。
- 安装/卸载:通过
install.php和uninstall.php脚本,可以方便地完成数据库的创建、修改和删除,实现一键安装和卸载。
总结与建议
| 文件/组件类型 | 路径/名称 | 主要功能 | 修改建议 |
|---|---|---|---|
| 数据表 | #@__flink |
存储所有友情链接数据 | - |
| 后台管理 | /dede/MakeFriend.php |
链接列表与总管理 | 一般不建议修改,除非有特殊业务逻辑。 |
| 后台处理 | /dede/flink_add.php /dede/flink_edit.php |
添加和编辑链接的表单与处理逻辑 | 极少修改,功能已足够。 |
| 前台调用 | /include/taglib/flink.lib.php |
{dede:flink} 标签的解析逻辑 |
如果需要修改调用方式或增加功能,修改此文件是核心。 |
| 前台模板 | 在你的模板文件中使用标签 | 在前台页面展示链接 | 最佳实践,通过修改模板中的标签来控制显示效果,而不是修改PHP文件。 |
| 自定义插件 | /plus/flink/ 或类似目录 |
提供增强功能,如在线申请等 | 推荐使用,如果需要超出系统原生功能,寻找或开发一个优秀的第三方插件是最佳选择。 |
给你的建议:
- 日常使用:直接在后台
/dede/MakeFriend.php中管理链接,在前台模板中使用{dede:flink}标签调用即可。 - 需要微调显示:修改前台模板中的
{dede:flink}标签及其HTML结构,这是最安全、最灵活的方式。 - 需要增加功能(如在线申请):强烈建议寻找一个成熟的第三方友情链接插件,而不是自己从零开始修改核心文件,这样可以保证系统的稳定性和未来的可升级性。
