问题排查与解决方案
文章发布时未填写来源或作者(最常见)
这是最简单也是最可能的原因,在后台发布文章时,来源”或“作者”这两个字段留空,那么在前台自然就不会显示。

解决方案:
- 登录DedeCMS后台。
- 进入“[内容管理] -> [所有档案列表]”。
- 找到一篇不显示来源或作者的文章,点击“[编辑]”。
- 在文章编辑页面,仔细检查“来源”和“作者”这两个输入框,确保它们已经填写了内容(来源可以填“本站原创”、“转载自XX网”,作者可以填“管理员”、“张三”等)。
- 点击“保持”或“确定”更新文章。
提示: 如果需要批量修改,可以在“所有档案列表”页面勾选多篇文章,然后点击“[批量维护] -> [批量设置来源/作者]”来进行快速填充。
页模板文件缺失或标签错误
页是通过模板文件来渲染的,如果模板文件里没有调用来源和作者的标签,或者标签写错了,自然就不会显示。
解决方案:

-
找到并打开文章内容页模板文件。 这个文件通常位于你的模板目录下,路径类似于:
/templets/default/article_article.htm(如果你的模板是default),请根据你实际使用的模板路径进行修改。 -
检查并添加/修正标签。 在
article_article.htm文件中,找到显示文章标题、正文等部分的位置,确保有如下标签:-
文章来源标签:
<span>来源:</span> {dede:field.source/}或者,如果来源为空时想显示默认文本,可以这样写:
(图片来源网络,侵删)<span>来源:</span> {dede:field.source function='(@me ? @me : "本站原创")'/} -
文章作者标签:
<span>作者:</span> {dede:field.writer/}同样,可以为空时设置默认值:
<span>作者:</span> {dede:field.writer function='(@me ? @me : "佚名")'/} -
发布时间标签(通常和它们在一起):
<span>时间:</span> {dede:field.pubdate function='strftime("%Y-%m-%d %H:%M:%S",@me)'/}
-
-
保存文件并更新。 修改完模板文件后,保存它,为了确保更改生效,可以去后台的“[系统] -> [一键更新网站]”中,选择“更新HTML”或“仅更新内容页”,重新生成一下文章页面。
列表页模板文件缺失或标签错误
如果你指的是在文章列表页(如首页、栏目页)不显示来源和作者,那么问题出在列表页模板文件上。
解决方案:
-
找到并打开列表页模板文件。
- 首页列表模板:
/templets/default/index.htm - 栏目列表模板:
/templets/default/list_栏目ID.htm或/templets/default/list_default.htm
- 首页列表模板:
-
检查并添加/修正标签。 在列表页的循环标签
{dede:list}或{dede:arclist}内部,添加来源和作者的调用标签。-
使用
{dede:list}{dede:list pagesize='10'} <li> <a href="[field:arcurl/]">[field:title/]</a> <span class="author">作者:[field:writer/]</span> <span class="source">来源:[field:source/]</span> <span class="date">[field:pubdate function="MyDate('Y-m-d',@me)"/]</span> </li> {/dede:list} -
使用
{dede:arclist}{dede:arclist titlelen='50' row='10'} <li> <a href="[field:arcurl/]">[field:title/]</a> <span class="author">作者:[field:writer/]</span> <span class="source">来源:[field:source/]</span> <span class="date">[field:pubdate function="MyDate('Y-m-d',@me)"/]</span> </li> {/dede:arclist}
-
-
保存文件并更新。 保存模板后,同样去后台“一键更新网站”,更新对应的列表页面。
数据库问题(可能性较低)
如果以上方法都无效,可能是数据库中对应的数据字段出现了问题,source 或 writer 字段在 dede_archives 表中被损坏或清空。
解决方案:
-
备份数据库! 在进行任何数据库操作前,务必备份数据库。
-
通过phpMyAdmin等工具登录你的数据库。
-
找到
dede_archives这张表。 -
执行一条SQL语句来检查数据,查询一篇已知文章的来源和作者:
SELECT title, source, writer FROM dede_archives WHERE id = '你的文章ID';
如果查询结果中
source和writer字段是空的,那么说明文章发布时就没填,或者被人为修改了,如果显示为奇怪的乱码,则可能是字符集问题。 -
如果确认是数据问题,只能回到“原因一”的解决方案,手动去后台编辑文章,重新填写来源和作者。
总结与排查流程
当你遇到“Dede文章来源作者不显示”的问题时,请按照以下步骤进行排查:
- 第一步(最简单): 检查后台文章,确认“来源”和“作者”字段是否已填写,这是80%的情况。
- 第二步(最常见): 如果已填写,但内容页不显示,则页模板
article_article.htm,确认{dede:field.source/}和{dede:field.writer/}标签是否存在且正确。 - 第三步(次常见): 如果是列表页不显示,则检查列表页模板
index.htm或list_xxx.htm,确认在{dede:list}或{dede:arclist}循环内是否有调用来源和作者的标签。 - 第四步(最后手段): 如果模板和标签都正确,考虑数据库问题,但这种情况非常罕见,通常都是前几步的问题。
按照这个流程,绝大多数问题都能得到解决。
