问:我在后台点“生成”文章内容页,结果网页打开是空白的,或者只显示一半内容,到底咋回事?
答:你先别急着刷新,八成是“模板标签”写错了,织梦的内容页模板叫 article_article.htm,它里面必须有 {dede:field.body/} 这个标签来调用正文,你打开模板文件看一眼,如果这个标签被误删了、少写了个斜杠,或者被注释掉了,那页面自然没内容,检查一下是不是用了“伪静态”但服务器没开 rewrite,那也会导致生成失败,最简单的测试方法:后台“系统 - 核心设置”里把“URL重写”临时关掉,再生成一次,如果好了,就是伪静态配置问题。
问:我在文章里插了图片,但内容页图片显示的是裂图,或者干脆不显示,怎么办?
答:这多半是“图片路径”没写对,你在编辑器里上传图片时,织梦会自动生成绝对路径(http://你的域名/uploads/...),但如果你手动改了域名、或者把网站从本地搬到服务器,旧路径就失效了,去后台“系统 - 图片设置”里把“图片默认地址”改成你现在的域名,然后在“批量维护 - 数据库内容替换”里,把旧域名替换成新域名,替换前一定备份数据库,别问我为什么知道。
问:我想让内容页自动显示“上一篇/下一篇”,但调出来是乱码或者不显示,怎么破?
答:你用的标签是 {dede:prenext get='pre'/} 和 {dede:prenext get='next'/} 对吧?这个标签没问题,但注意它必须在循环标签外面,如果你不小心把它放进了 {dede:list} 或者 {dede:arclist} 里面,它就会重复输出或者报错,确认你的内容页模板顶部有没有加入 {dede:config runphp='yes'} 这个声明,如果没有,部分动态标签会失效,你可以直接复制官方默认模板里的那段,改改样式就行。
织梦CMS内容页生成内容错误?别慌,八成是这五个地方没弄对
问:我改了内容页模板,但重新生成后,前端页面还是老样子,是不是没生效?
答:你十有八九是忘了清缓存,织梦后台“系统 - 缓存更新”里,把所有选项都勾上,特别是“模板缓存”和“SQL缓存”,如果你用的是“生成纯静态HTML”模式,光更新缓存不够,必须去“内容 - 批量维护 - 重新生成所有文档”里重新生成一遍,别嫌麻烦,这是织梦的老脾气——模板变了,旧页面不会自动重写。
页标题老是显示成“网站名_栏目名”,我想让它变成“文章标题_网站名”,怎么改?**
答:这个在“模板 - 模板管理 - 内容页模板”里,找到 <title> 标签那一行,默认写的是 {dede:field.title/} - {dede:global.cfg_webname/},你把它改成 {dede:field.title/} - {dede:global.cfg_webname/} 就已经是“文章标题+网站名”了,如果你现在显示反了,说明你模板里写的是 {dede:global.cfg_webname/} - {dede:field.title/},把两段位置互换一下就行,如果还不行,看看是不是用了SEO插件,插件会在生成时覆盖模板标题。
问:我想在内容页底部加一个“相关推荐”,但调用出来的内容不对,比如推荐了同栏目的垃圾文章,怎么调?
答:推荐功能要用 {dede:likearticle} 标签,但它的默认逻辑是按“关键词”匹配,不是按“栏目”,如果你没填关键词,它就会随机乱调,你改成 {dede:likearticle row='5' titlelen='50' orderby='rand'},然后在“关键词”字段里手动给文章打几个词,SEO”“织梦教程”,更省事的方法是直接用 {dede:arclist typeid='0' row='5' orderby='pubdate'},配合 where=" id not in 当前文章ID " 来排除当前文章,但这样写复杂,新手容易出错,我建议你用 {dede:channel type='son'} 调出当前栏目下的子栏目文章,typeid='你当前栏目ID',这样推荐的内容至少是相关的。
页的“浏览次数”一直不涨,是不是代码写错了?**
答:你确认模板里有 {dede:field.click/} 这个标签吗?没有的话,加上就行,如果加了还是不涨,检查一下是不是开了“缓存生成静态页”,静态页面的点击量是写给数据库的,但如果每次点击都重新生成页面,那会消耗资源,建议你在内容页底部放一个JS调用,{dede:field.click/} 改成 <script src="/click.php?id={dede:field.id/}"></script>,但这样对新手有点复杂,最简单的方案:后台“系统 - 系统基本参数 - 性能选项”里,把“模板缓存”设为“不缓存”,或者把“生成静态页”改为“动态页”,这样点击量实时更新,不过对服务器压力稍大。
问:我想在内容页里显示“文章作者”,但后台投稿的人没填作者名,显示为空,怎么默认成“管理员”?
答:模板里用 {dede:field.writer/} 输出作者,如果为空,你可以在后台“系统 - 系统基本参数 - 核心设置”里,把“默认作者”设置成“管理员”,但这只对之后发布的新文章有效,旧文章的话,用“批量维护 - 数据库内容替换”,把 writer 字段里的空值替换成“管理员”,SQL语句类似 UPDATE dede_archives SET writer='管理员' WHERE writer='',放心,只要表前缀是 dede_,这么写没问题。
问:每次生成内容页都报错“Request var not allowed!”,这又是啥?
答:这是织梦的安全机制在拦截不合规的请求参数,多半是你在URL里带了特殊字符,比如你测试的时候在文章标题里加了 或者 ,生成时被拦截了,解决办法:后台“系统 - 系统基本参数 - 安全选项”里,把“允许的URL参数”调大,或者把“错误信息提示”改成“关闭”,不过建议你还是检查一下标题和摘要里有没有乱码字符,改了再生成,如果你用了“自定义文件名”且带了中文,也会触发这个报错,把文件名改成拼音或数字就行。



答:检查模板标签是否正确,如{dede:field.body/},确保URL重写开启。