帝国CMS调用自定义列表名称的方法(简单二次开发实现)
<p>本文讲述了帝国CMS调用自定义列表名称的方法,在这里提供了2种实现方法,涉及针对帝国CMS底层代码的修改。具体如下:</p>
<p>
<strong>一、问题描述:</strong></p>
<p>
需要调出自定义列表名称,如下图所示:</p>
<p>
而使用帝国CMS原有的标签只能调用网页标题,而无法调出列表名称</p>
<p>
<strong>二、解决方法:</strong></p>
<p>
<strong><font color="#ff6600">方法一:</font></strong></p>
<p>
首先需要实现自定义列表可调出当前栏目ID,具体方法可参考前面的教程《帝国CMS在自定义列表中获取当前列表ID的方法》。</p>
<p>
能够在自定义列表通过$navclassid获取当前栏目ID的话,问题就变得非常简单了,使用灵动标签的SQL调用如下:</p>
<p>
</p>
<div>
<p>
代码如下:</p>
</div>
<div id="phpcode8">
enewsuserlist where listid=$navclassid",1,24,0}]<br>
<?=$bqr['listname']?><br>
</div>
<p>
</p>
<p>
这样就可以调出列表名了!</p>
<p>
<strong><font color="#ff6600">方法二:</font></strong></p>
<p>
修改帝国CMS源码,添加调用字段实现直接调用该名称。</p>
<p>
具体操作如下:</p>
<p>
<font color="#0000ff">步骤1:</font></p>
<p>
打开e\admin\other\ListUserlist.php文件,在大约147行找到刷新自定义列表函数function DoReUserlist($add,$userid,$username){</p>
<p>
在该函数的查找调用数据库字段部分找到这段代码:<br>
</p>
<div>
<p>
代码如下:</p>
</div>
<div id="phpcode9">
$ur=$empire->fetch1("select listid,pagetitle,filepath,filetype,totalsql,listsql,maxnum,lencord,listtempid,pagekeywords,pagedescription from {$dbtbpre}enewsuserlist where listid='".$listid[$i]."'");</div>
<p>
</p>
<p>
<font color="#ff0000">添加listname字段</font>,改成如下形式:</p>
<p>
</p>
<div>
<p>
代码如下:</p>
</div>
<div id="phpcode10">
<br>
$ur=$empire->fetch1("select listid,listname,pagetitle,filepath,filetype,totalsql,listsql,maxnum,lencord,listtempid,pagekeywords,pagedescription from {$dbtbpre}enewsuserlist where listid='".$listid[$i]."'");</div>
<p>
</p>
<p>
如下图所示:</p>
<p>
</p>
<p>
<font color="#0000ff">步骤2:</font></p>
<p>
打开e\class\functions.php,在大约2467行找到生成信息列表函数function ListHtml($classid,$fields,$enews=0,$userlistr=""){</p>
<p>
<font color="#ff0000">添加自定义字段</font>:<br>
</p>
<div>
<p>
代码如下:</p>
</div>
<div id="phpcode11">
$GLOBALS['navclasslistname']=$enews==4?$userlistr['listname']:"";</div>
<p>
</p>
<p>
如下图所示:</p>
<p>
</p>
<p>
<font color="#0000ff">至此,就可以在列表模板使用$GLOBALS['navclasslistname']调用自定义列表名称</font>。</p>
<p>
希望本文所述对大家基于帝国CMS的网站程序设计有所帮助。</p>
頁:
[1]