帝国CMS栏目页和列表页模板通过正常的栏目名称标签调用栏目名称,要不显示的是栏目别名,要不无法正常显示,例如以下标签
[!--this.classname--]
[!--pagetitle--]
[!--class.name--]
<?=$class_r[$GLOBALS[navclassid]][classname]?>
<?=$class_r[$navclassid][classname]?>
这些标签都没办法正常的显示文章所在栏目的名称和地址链接。
具体解决方法如下。
1.在列表页模板里勾选使用程序代码
2.使用SQL查询代码进行调用,调用代码如下:
$cl=$empire->fetch1("select classname from {$dbtbpre}enewsclass where classid='$r[classid]'");
$classname=$cl['classname'];
$listtemp='<div class="article-update-item">
<div class="article-update-items-img">
<a href="[!--titleurl--]" title="[!--oldtitle--]"><img src="[!--titlepic--]" alt="[!--title--]" title="[!--oldtitle--]"></a>
</div>
<div class="article-update-items-content">
<h2><a href="[!--titleurl--]" title="[!--oldtitle--]">[!--title--]</a></h2>
<p>[!--smalltext--]...</p>
<span>
<i class="iconfont icon-col"><a
href="[!--this.classlink--]"> '.$classname.' / </a></i>
<i class="iconfont icon-rili"> [!--newstime--] / </i>
<i class="iconfont icon-hot"> [!--onclick--]次浏览</i>
</span>
</div>
</div>
';
在需要调用文章所属栏目名称的地方插入'.$classname.'即可,这样就可以正常调用文章所属子栏目的名称了。