帝国CMS模板列表页(list.var)中调用栏目名称而非栏目别名的方法

帝国CMS模板列表页(list.var)中调用栏目名称而非栏目别名的方法

浏览次数:
作者: 墨鱼
信息来源: 本站原创
更新日期: 2020-10-11 15:48:53
文章简介

在帝国CMS模板列表页(list.var)中,若需调用栏目名称而非别名,可使用特定函数获取栏目信息,并提取名称字段进行输出。此方法确保内容准确,提升用户体验。简洁高效,符合SEO优化要求。

  • 正文开始
  • 相关阅读
  • 推荐作品

方法1、

帝国默认机制是这样的:当没填写栏目别名时,前台显示的是栏目名称,如果有别名则显示别名,只是通常情况下新建栏目时,别名会默认跟栏目名保持一致,所以很多人没注意过这个问题。

当别名跟主名不一样的时候你就知道区别在哪了,尤其是list.var里面用[!--this.classname--]调用栏目名时,显示的全是别名,如果想改回用主名作显示,可以这么改:

1、列表模版list.var勾选开启“使用程序代码”

2、在原本的list.var模版前加上$listtemp=',在最后加上';

3、在需要调用栏目名的地方用'.$class_r[$r[classid]]['classname'].'来调用。

实例:

$listtemp='

<li>【'.$class_r[$r[classid]]['classname'].' 】【[!--this.classname--]】<a href="[!--titleurl--]" title="[!--oldtitle--]">[!--title--]</a> <span>[!--newstime--]</span></li>

';

 

效果:

【国内新闻】【国内】盂县集贸市场又有新动作

-----------------------------------------------------------

方法2、

帝国CMS里如果填写了栏目别名以后,那么栏目列表内容模板(list.var)调用栏目名称标签[!--this.classname--]实际上是调用的栏目别名,这个不知道算不是帝国CMS的BUG还是故意这样做的!解决方法就是用SQL单独查询输出一个栏目名称就好了,具体代码如下:

$cl=$empire->fetch1("select classname from phome_enewsclass where classid='$r[classid]'");

$listtemp='

<li>【<a href="'.$classpath=$public_r['newsurl'].$cl['classpath'].'">'.$classname=$cl['classname'].'</a>】<a href="[!--titleurl--]" title="[!--oldtitle--]">[!--title--]</a> <span>[!--newstime--]</span></li>

';

效果:

【国内新闻】盂县集贸市场又有新动作

帝国CMS后台直接增加会员功能支持最新7.5
« 上一篇 2020年10月11日
帝国CMS会员中心模板中判断收藏夹是否有内容
下一篇 » 2020年10月16日

如本文对您有帮助,就请墨鱼抽根烟吧!