问题排查思路(从最常见、最简单的原因开始)
当你遇到标签写不进时,请按照以下顺序逐一检查,90%的问题都能在前两步解决。

(图片来源网络,侵删)
第一步:检查前台提交入口(最常见的原因)
织梦的标签提交需要一个专门的页面,而不是在文章编辑页直接添加,这个页面通常是 tags.php。
-
确认你的网站是否有
tags.php文件- 登录你的网站FTP或主机控制面板。
- 进入网站根目录(通常是 或
/www)。 - 查找是否存在
tags.php这个文件,如果文件不存在,你需要从织梦程序的官方安装包里找到它,并上传到你的网站根目录。
-
检查
tags.php文件是否被正确调用- 有些主题为了美化,可能会自定义标签页面的模板,
tags.htm。 - 你需要确保
tags.php这个文件能够正常访问,在浏览器中输入你的网站地址,http://www.yourdomain.com/tags.php。 - 如果访问出现404错误或页面空白:
- 检查伪静态规则:织梦的标签页面需要伪静态支持,请登录你的网站后台,进入 【系统】->【系统基本参数】->【核心设置】。
- 找到 “是否使用伪静态” 这个选项,确保它选择的是 “是”。
- 你需要根据你的服务器环境(Apache或Nginx),重新上传并配置对应的伪静态规则文件。
- Apache服务器:规则文件是
/htaccess.txt,你需要将其内容复制到你网站根目录下的.htaccess文件中(如果不存在则创建)。 - Nginx服务器:规则在
/nginx.conf,你需要将这些规则添加到你的Nginx虚拟主机配置中,并重启Nginx服务。
- Apache服务器:规则文件是
- 配置好伪静态规则后,再次访问
tags.php。
- 有些主题为了美化,可能会自定义标签页面的模板,
-
检查文章模板中的标签调用代码
(图片来源网络,侵删)- 后台发布的文章内容里,标签是通过一个特定的表单元素提交的,这个元素通常在文章内容模板(如
article_article.htm)中。 - 登录织梦后台,进入 【模板】->【默认模板管理】,找到你正在使用的文章内容模板(
article_article.htm)。 - 打开这个文件,查找是否包含以下代码(这是提交标签的关键):
<input type='hidden' name='tags' id='tags' value='{dede:field.tags/}' /> - 如果找不到这行代码,你需要手动添加它,它被放在文章编辑框附近,你可以从织梦默认模板里找到这行代码,然后复制粘贴到你的模板文件中。
- 后台发布的文章内容里,标签是通过一个特定的表单元素提交的,这个元素通常在文章内容模板(如
第二步:检查数据库和表前缀(第二常见原因)
tags.php 能打开,但提交后没有反应,或者标签列表里看不到,那很可能是数据库表的问题。
-
检查数据表是否存在
- 登录你的网站数据库管理工具(如 phpMyAdmin)。
- 查看你的数据库里,是否存在名为
#@__taglist和#@__tagindex的表(#@__是你的表前缀,默认是dede_)。 - 如果这两个表不存在,说明你的数据库没有安装标签功能,你需要登录织梦后台,进入 【系统】-> 【SQL命令行工具】**。
- 在里面执行织梦安装包
/data/tag.sql文件里的SQL语句,来创建这两个表。
-
检查表前缀是否正确
- 网站安装时修改了表前缀(比如改成
yoursite_),但你在某些地方可能还是用的默认的dede_。 - 请确保你的
config.php文件中的$cfg_dbprefix变量值,和你数据库里实际的表前缀是一致的。
- 网站安装时修改了表前缀(比如改成
第三步:检查文件权限问题
如果以上都正常,但依然无法写入,可能是服务器权限限制了PHP文件的写入操作。

(图片来源网络,侵删)
-
检查关键目录权限
- 通过FTP或主机控制面板,检查以下目录的权限是否设置为 755(或Linux下的
drwxr-xr-x):/data/(存放缓存配置文件)/uploads/(存放上传文件)/templets/(存放模板文件)
- 检查以下文件的权限是否设置为 644(或Linux下的
-rw-r--r--):/data/config.cache.inc.php/tags.php
- 通过FTP或主机控制面板,检查以下目录的权限是否设置为 755(或Linux下的
-
检查PHP进程所有者
- 这是一个比较高级的问题,如果你的服务器使用了 SuPHP 或 PHP-FPM,并且开启了安全模式(如
open_basedir),PHP进程可能没有权限写入由root或其他用户创建的文件。 - 解决方法是将网站目录的所有者和组设置为运行PHP的用户(通常是
www-data或nobody),这需要通过SSH命令或主机面板的“文件所有者”功能来完成,如果你不熟悉,可以联系你的主机服务商解决。
- 这是一个比较高级的问题,如果你的服务器使用了 SuPHP 或 PHP-FPM,并且开启了安全模式(如
第四步:检查PHP环境和程序文件
-
检查PHP版本兼容性
确保你使用的织梦版本(如DedeCMS 5.7)与你服务器的PHP版本(如PHP 7.0, 7.1, 7.2等)兼容,过高的PHP版本可能会导致一些旧版织梦程序执行出错。
-
检查
tags.php文件本身- 用代码编辑器(如VS Code, Notepad++)打开
/tags.php文件。 - 检查文件开头是否包含必要的织梦框架引入代码:
require_once(dirname(__FILE__)."/include/common.inc.php"); require_once(DEDEINC."/arc.tag.class.php");
- 检查文件中是否有明显的语法错误或被恶意修改的痕迹。
- 用代码编辑器(如VS Code, Notepad++)打开
-
检查PHP配置
file_uploads- 登录主机控制面板,找到PHP配置选项(如
php.ini配置)。 - 确保
file_uploads = On是开启的,虽然标签提交不完全是文件上传,但这个设置有时也会影响表单数据的处理。
- 登录主机控制面板,找到PHP配置选项(如
总结与快速排查清单
遇到“标签写不进”问题,请按此清单快速操作:
- [必做] 访问
你的域名/tags.php,看页面是否正常,若不正常,检查伪静态规则。 - [必做] 检查文章内容模板(
article_article.htm)里是否有<input type='hidden' name='tags' ...>这行代码。 - [必做] 进入数据库,确认
#@__taglist和#@__tagindex这两个表是否存在,若不存在,执行tag.sql。 - [建议] 检查
/data/和/uploads/目录权限是否为755。 - [ 如果以上都无效,尝试用FTP重新上传一个干净的
tags.php文件到根目录。
按照这个流程,你基本上可以解决绝大多数的织梦标签无法写入的问题,如果问题依然存在,可以提供你的具体错误现象(比如是提交没反应,还是提交了但看不到,或者后台报什么错),以便更精确地定位问题。
