站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
建站程序
开发
服务器
办公软件
开发教程
服务器教程
软件使用教程
运营教程
热门电子书
WordPress教程
宝塔面板教程
CSS教程
Shopify教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
CMSware常见模版错误
”
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
<span style="border:1px solid #000; float:right; text-align:center; padding:6px;"><strong>导航:</strong>[[CMSware模板制作指南#知识技巧汇总|返回上一页]]</span> <div style="clear:both;"></div> 概述:常见[[模版]]错误主要有三类:模版语法错误、内容调用错误和新旧版语法混用。模版语法错误一般在刷新页面时任务执行窗口会有相关报错,内容调用错误则要认真分析前台输出页面的报错代码来查找问题,一般而言此时我们的模版并没有写错或者说没有语法错误,但是可能在模版中调用了不存在的内容等,比如调用了不存在的结点或内容模型。 虽然新版思维([[CMSware]])兼容旧版语法(思维(CMSware)2.1及其以前的模版语法),但如果混用容易导致各种错误。 ==第一类:无法生成、刷新页面等模版语法错误== '''常见症状''' #对模版进行修改后,更新页面后,没有变化; #改变发布位置,点击更新后没有生成页面。 此时一般是您的模版语法有错误,请按照以下说明参照用户手册查找解决问题。 '''查找问题代码方法:''' 在信息查看菜单上,选择查看状态窗口,右下角会出现一个框,比如显示结果为 <pre> > Updating index.htm at 品位龙江 failed. 2005-9-4 23:32:7 </pre> 该提示表明该内容页所使用的模版可能有错误,此时,我们选择查看任务执行窗口,左下角会出现一个框,再次刷新页面,如果模版有错,会在左下角框里显示出错信息和错误行数,按提示打开那个模版编译中间文件(在 系统安装目录/sysdata/templates_c 下)来看看,找到出错行,对照模版看是哪行,看看是不是语法有问题,或是语句匹配问题之类 比如任务执行窗口显示如下信息: <pre> parse error: parse error in w:\www\cmsware\sysdata\templates_c\%%c_^@templates@pale_blue_html@include@category_index.htm on line 41 </pre> 以上文字中重点标识部分为目录名或者文件名。 查找问题时,进入目录w:\www\cmsware\sysdata\templates_c\,找到并用文本编辑器打开文件%%c_^@templates@pale_blue_html@include@category_index.htm,看第41行的具体内容并针对用户手册认真的一点点找问题所在。 然后根据刚才所查找到的原因对模版category_index.htm(在pale_blue_html/include/)作相应修改 ==第二类:内容调用错误== *症状1:制作模版时从手册直接粘贴代码到所作模版的相应部分但是图片、内容列表等却调用不出来,并且查看状态窗口、任务执行窗口也没有报错 *可能原因:粘贴代码的结点ID(NodeID)与当前栏目的结点ID不一致;原代码中调用了特定排序权重的内容以及精华、置顶等特定内容而您的当前结点内又没有这样的内容 *症状2:页面完全无法生成,并且查看状态窗口、任务执行窗口也没有报错 *可能原因:模版代码中可能有多余的loop循环、where等;闭合标签:比如<nowiki><loop ......>....</loop>、<if...>......</if></nowiki>等没有闭合,即缺少了后面的部分;非闭合标签没有使用 "/"作为结束符 *症状3:页面完全无法生成,查看状态窗口、任务执行窗口有报错,但是对照手册时却找不到什么错误 *可能原因:可能您的模版在同一个<nowiki><cms /></nowiki>标签内即使用了 2.5版以前的旧语法也使用了2.5版开始启用的新语法,此时会出错;模版标签中单引号、双引号混合使用也会出错,新语法要求模版标签必须用双引号引起来. *症状4:我在文章上后面都加上有相关问题,一般是显示10条。今天看了一下生成了文件,吃惊啊,所有的相关文章的内容在原文章中全有了。 一个文件,平白大了几倍。 应该只是一个链接的啊,为什么内容也有了? *可能原因:模版中包含了<nowiki><debug name="List" /></nowiki>这个用来调试变量输出的标签 *症状5:前台页面生成不完整,有些内容能调用出来,有些部分显示的是如下报错信息: :报错信息1: <pre> SYS info: MySQL Query Error Time: 2005-11-10 9:24am Script: /cmsware/admin/admin_task.php SQL: SELECT i2.NodeID,i2.ContentID,i2.State,i2.URL,i.IndexID,i.PublishDate,i.Type,i.Sort,i.Pink,co.*, c.* FROM cmsware_content_index i,cmsware_content_index i2 left JOIN cmsware_publish_ c ON c.IndexID=i2.IndexID left JOIN cmsware_plugin_base_count co ON co.IndexID=i2.IndexID where (UNIX_TIMESTAMP() >= i.PublishDate) AND i.parentIndexID=i2.IndexID AND i2.State=1 AND i.State=1 AND i2.Type!=3 AND i.NodeID='' AND c.Photo='' ORDER BY i.Top DESC,i.Sort DESC,i.PublishDate DESC Limit 0,10 Error: Table 'netzhu.cmsware_publish_' doesn't exist Errno.: 1146 -- Backtrace -- /pub/www/vhost/netzhu/cmsware/include/lib/kDB/lib/mysql.php(66): require /pub/www/vhost/netzhu/cmsware/include/lib/kDB/lib/mysql.php(57): mysql.halt /pub/www/vhost/netzhu/cmsware/include/lib/kDB/lib/mysql.php(171): mysql.query /pub/www/vhost/netzhu/cmsware/include/lib/kDB/driver/db.php(23): mysql.execute /pub/www/vhost/netzhu/cmsware/include/lib/kDB/kDB.php(49): db.execute /pub/www/vhost/netzhu/cmsware/include/cms.func.php(534): kdb.execute /pub/www/vhost/netzhu/cmsware/sysdata/templates_c/%%c_^@templates@default@index.html(183): cms_list /pub/www/vhost/netzhu/cmsware/include/lib/kTemplate/kTemplate.class.php(240): include /pub/www/vhost/netzhu/cmsware/include/lib/kTemplate/kTemplate.class.php(284): ktemplate._fetch /pub/www/vhost/netzhu/cmsware/include/admin/publishAdmin.class.php(1076): ktemplate.fetch /pub/www/vhost/netzhu/cmsware/admin/admin_task.php(230): publishadmin.refreshindex </pre> :报错信息2: <pre> SYS info: MySQL Query Error Time: 2005-11-10 10:08am Script: SQL: SELECT i.NodeID,i.ContentID,i.State,i.URL,i.IndexID,i.PublishDate,i.Type,i.Sort,i.Pink, c.* ,co.Hits_Total, co.Hits_Today, co.Hits_Week, co.Hits_Month, co.Hits_Date, co.CommentNum From cmsware_plugin_base_count co, cmsware_content_index i,cmsware_publish_999 c where co.IndexID=i.IndexID AND c.IndexID=i.IndexID AND co.TableID=999 ORDER BY co.CommentNum DESC Limit 0,10 Error: Table 'cmsware.cmsware_publish_999' doesn't exist Errno.: 1146 -- Backtrace -- W:\www\CMSware\include\lib\kDB\lib\mysql.php(66): require W:\www\CMSware\include\lib\kDB\lib\mysql.php(57): mysql.halt W:\www\CMSware\include\lib\kDB\lib\mysql.php(171): mysql.query W:\www\CMSware\include\lib\kDB\driver\db.php(23): mysql.execute W:\www\CMSware\include\lib\kDB\kDB.php(49): db.execute W:\www\CMSware\include\cms.func.php(534): kdb.execute W:\www\CMSware\sysdata\templates_c\%%c_^@templates@org.cmsware.demo@news@index.html(30): cms_list W:\www\CMSware\include\lib\kTemplate\kTemplate.class.php(240): include W:\www\CMSware\include\lib\kTemplate\kTemplate.class.php(280): ktemplate._fetch W:\www\CMSware\include\admin\publishAdmin.class.php(1076): ktemplate.fetch W:\www\CMSware\admin\admin_task.php(230): publishadmin.refreshindex </pre> '''问题分析与查找''':上述两则报错信息都很长并且看似没有什么共性,我们认真看两段报错信息,重点看我加了标记色的部分。“Error”是出错原因,这两段代码都报Table 'xx' doesn't exist,表明都是因为调用了不存在的内容(数据表)."<nowiki>templates_c/%%c_^@templates@default@index.html(183): cms_list</nowiki>"和“<nowiki>templates_c\%%c_^@templates@org.cmsware.demo@news@index.html(30): cms_list</nowiki>”这两段报错代码结构一样,“<nowiki>templates@default@index.htm(183): cms_lis</nowiki>”表明报错模版文件位于templates/default /index.html,第183行报错,报错处使用的系统调用函数为 CMS_LIST();“<nowiki>templates@org.cmsware.demo@news@index.html(30): cms_list</nowiki>”表明报错模版文件位于templates/org.cmsware.demo/news/index.html,第30行报错,报错处使用的系统调用函数为CMS_LIST().知道了出错位置和大体出错原因,下一步就该查看相应的模版的源文件解决问题了。 ==第三类:新旧版语法混用== '''典型问题示例1''':在我的模版里想要调用一个结点下所有文章标题!用了以下代码,但是无法生成大家帮忙给 看看!部分模版代码如下: <pre> <CMS::NODELIST:List Type="sub" NodeID="123" Ignore="" > <loop $List key=key var=var > <a href="[$var.NodeURL]"> [$var.NodeName] </a> | </loop> </td> </tr> <tr> <td height="19" colspan="2"> <p align="left"><font size="2">长空无际</font></td> </tr> <tr> <th width="190" rowspan="2" valign="top"> <img border="0" src="images/cr3_10.gif" width="186" height="27"><img border="0" src="images/24ta_1.gif" width="185" height="293"></th> <td width="600" valign="top" height="151" background="images/snow.gif"> <CMS action="LIST" return="List" NodeID="all-216" Num="10" /> <LOOP name="List" var="var" key="key"> - [<a href="[$var.NodeURL]" target="_blank" > [$var.NodeName] </a>] <a href="[$var.URL]" target="_blank" title="[$var.Title]" >[@CsubStr($var.Title,0,16)] </a> <br> </LOOP> </pre> '''问题分析''':看您这个模版中,第一段cms语法是2.1格式的,就是下面这段 <pre> <CMS::NODELIST:List Type="sub" NodeID="123" Ignore="" > <loop $List key=key var=var > <a href="[$var.NodeURL]"> [$var.NodeName] </a> | </loop> </pre> 2.1格式的语法必须有</cms>, 而下面几段都是2.5的语法,2.5的不需要 '''典型问题示例2''',模版中的非闭合标签没有添加结束符:我的内容列表调用不出来,也没有任何模版报错,代码如下 <pre> <CMS action="LIST" return="List" NodeID="all-216" Num="10"> <LOOP name="List" var="var" key="key"> <a href="[$var.URL]" target="_blank" title="[$var.Title]" >[@CsubStr($var.Title,0,16)] </a> <br> </LOOP> </pre> '''问题分析''':模版中的非闭合标签<nowiki><CMS...>没有添加结束符<CMS.../></nowiki>,第一行正确的格式应该为 <pre> <CMS action="LIST" return="List" NodeID="all-216" Num="10" /> </pre> '''常见问题3''':闭合标签 比如<nowiki><loop ......>....</loop>、<if...>......</if></nowiki>等没有闭合,即缺少了后面的部分 ==参考来源== *[http://www.lonmo.com/cmsware/manual/ 参考来源] [[category:CMSware]]
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)