帝国cms常用标签汇总

一、获取当前专题ID:因为当前专题ID或当前专题子类ID变量是:$GLOBALS[navclassid],当为专题子类页面时,则所属专题ID变量为“$GLOBALS[navinfor][ecmsbid]”。所有我们能得出当前专题ID变量为如下:$selfztid=$GLOBALS[navinfor][ecmsbid]?$GLOBALS[navinfor][ecmsbid]:$GLOBALS[navclassid];

灵动标签调用栏目导航技巧: 例一:灵动标签显示栏目导航

判断会员是否登录

复制代码

table width=200 border=0 cellpadding=3 cellspacing=1 bgcolor=#4FB4DE tr
td height=25strongfont color=#FFFFFF栏目导航/font/strong/td /tr
[e:loop={select classid,classname from {$dbtbpre}enewsclass where
bclassid=父栏目id order by myorder,classid desc,0,24,0}] ?php
$classurl=sys_ReturnBqClassname($bqr,9);//取得栏目地址 ? tr td
height=25 bgcolor=#FFFFFFa href=?=$classurl??=$bqr[classname]?/a/td
/tr [/e:loop] /table

<?php
if(!$_COOKIE[ecmsmlusername]){
$srr="登录可见";
}else{
$srr="[!--lbsly--]";
}
?>

[!--news.url--]skin/default/

[e:loop={"select classid,classname,bname from phome_enewsclass where classid='$GLOBALS[navclassid]'",1,24,0}]<title><?=$bqr[bname]?></title>[/e:loop]

[e:loop={"select * from phome_enewsclass where classid='$GLOBALS[navclassid]'",1,24,0}]<title><?=$bqr[bname]?></title>[/e:loop]

<?php
$fcr=explode('|',$class_r[$GLOBALS[navclassid]][featherclass]);
$topbclassid=$fcr[1]?$fcr[1]:$GLOBALS[navclassid];//取得当前栏目的顶级栏目ID
$rs=$empire->fetch1("select * from phome_enewsclass where classid=$topbclassid");
?>
_<?=$rs['bname']?>_<?=$public_r[sitename]?> 顶级栏目名称+网站标题

<?=$class_r[$GLOBALS[navclassid]][bname]?> 得到当前栏目的名称
<title>[!--pagetitle--] </title> 或  <title><?=$class_r[$GLOBALS[navclassid]][bname]?></title>
<meta name="keywords" content="[!--pagekey--]" />
<meta name="description" content="[!--pagedes--]" />

isgood=1 一级推荐

firsttitle=1 一级头条

[e:loop={10,3,0,0}] 10当前栏目,3显示条数,

[e:loop={4,1000,0,1,'leib="楼市快讯"','id DESC'}] 1有图片的显示。

[e:loop={"select * from phome_ecms_xtgg where firsttitle=1 order by id DESC limit 20",6,24,0}]

<?=$bqno?> [!--no.num--] 循环序号

<?=$bqsr['titleurl']?> <?=$bqr[title]?> <?=esub($bqr[title],8)?>

[/e:loop]

二、通过当前专题ID,就可以获取当前专题的子类列表:?php$selfztid=$GLOBALS[navinfor][ecmsbid]?$GLOBALS[navinfor][ecmsbid]:$GLOBALS[navclassid];$uztcsql=$empire-query(select
cid,cname,ttype from {$dbtbpre}enewszttype where ztid=$selfztid order by
myorder);while($uztcr=$empire-fetch($uztcsql)){?b专题子类名称:?=$uztcr[cname]?,专题子类地址:type?=$uztcr[cid].$uztcr[ttype]?/bbrbr?php}?

显示效果:
例二:灵动标签显示栏目导航,且给当前终极栏目的背景设为蓝色

<?=DoWapRepNewstext($r[newstext])?>

复制代码

table width=200 border=0 cellpadding=3 cellspacing=1 bgcolor=#4FB4DE tr
td height=25strongfont color=#FFFFFF栏目导航/font/strong/td /tr
[e:loop={select classid,classname from {$dbtbpre}enewsclass where
bclassid=父栏目id order by myorder,classid desc,0,24,0}] ?php
$classurl=sys_ReturnBqClassname($bqr,9);//取得栏目地址
$bgcolor=#FFFFFF;
if($bqr[classid]==$GLOBALS[navclassid])//当前栏目ID {
$bgcolor=#C3EFFF; } ? tr td height=25 bgcolor=?=$bgcolor?a
href=?=$classurl??=$bqr[classname]?/a/td /tr [/e:loop] /table

时间调用标签:<?=date(“Y-m-d”,$bqr[‘newstime’])?>

三、结合索引灵动标签,就可以获取专题子类及子类下的信息:上面第2条已经实现了调用专题子类,而调用专题子类下的信息我们是用“索引灵动标签”。所以结合如下:?php$selfztid=$GLOBALS[navinfor][ecmsbid]?$GLOBALS[navinfor][ecmsbid]:$GLOBALS[navclassid];$uztcsql=$empire-query(select
cid,cname,ttype from {$dbtbpre}enewszttype where ztid=$selfztid order by
myorder);while($uztcr=$empire-fetch($uztcsql)){?a
href=type?=$uztcr[cid].$uztcr[ttype]?b专题子类名称:?=$uztcr[cname]?/b/abrtable
border=0 cellspacing=1
cellpadding=3[e:indexloop={$uztcr[cid],10,4,,,}]trtda
href=?=$bqsr[titleurl]?
target=_blank?=$bqr[title]?/a(?=date(Y-m-d,$bqr[newstime])?)/td/tr[/e:indexloop]/tablebrbr?php}?

$GLOBALS[navclassid]为当前栏目ID。
例三:灵动标签显示一级栏目导航,且在子栏目时也给当前一级栏目的背景设为蓝色

列表页

复制代码

table width=200 border=0 cellpadding=3 cellspacing=1 bgcolor=#4FB4DE tr
td height=25strongfont color=#FFFFFF栏目导航/font/strong/td /tr
[e:loop={select classid,classname from {$dbtbpre}enewsclass where
bclassid=0 order by myorder,classid desc,0,24,0}] ?php
$classurl=sys_ReturnBqClassname($bqr,9);//取得栏目地址
$bgcolor=#FFFFFF; if($GLOBALS[navclassid]) {
$fcr=explode(‘|’,$class_r[$GLOBALS[navclassid]][featherclass]);
$topbclassid=$fcr[1]?$fcr[1]:$GLOBALS[navclassid];//取得当前栏目的一级栏目ID
if($bqr[classid]==$topbclassid) { $bgcolor=#C3EFFF; } } ? tr td
height=25 bgcolor=?=$bgcolor?a
href=?=$classurl??=$bqr[classname]?/a/td /tr [/e:loop] /table

您当前的位置:[!–newsnav–]

四、教程延伸:显示什么专题子类主要看上面的“select cid,cname,ttype from
{$dbtbpre}enewszttype where ztid=$selfztid order by
myorder”语句中的where条件。其实我们还可以增加专题自定义字段来实现控制显示子类内容,比如:我们增加个专题自定义字段“savecids”,用来填写要调用的专题子类ID,那么我们就可以把查询子类的sql改为如下:?php$ztdiyfval=ReturnZtAddField(0,savecids);??php$uztcsql=$empire-query(select
cid,cname,ttype from {$dbtbpre}enewszttype where cid in (.$ztdiyfval.)
order by myorder);while($uztcr=$empire-fetch($uztcsql)){?a
href=type?=$uztcr[cid].$uztcr[ttype]?b专题子类名称:?=$uztcr[cname]?/b/abrtable
border=0 cellspacing=1
cellpadding=3[e:indexloop={$uztcr[cid],10,4,,,}]trtda
href=?=$bqsr[titleurl]?
target=_blank?=$bqr[title]?/a(?=date(Y-m-d,$bqr[newstime])?)/td/tr[/e:indexloop]/tablebrbr?php}?

[!–no.num–]

复制代码

[!–show.listpage–]

附加说明:有关调用专题自定义字段可以看后台管理专题字段页面的说明。如下:使用内置调用专题自定义字段函数:ReturnZtAddField(专题ID,字段名),专题ID=0为当前专题ID。取多个字段内容可用逗号隔开,例子:取得classtext字段内容:$value=ReturnZtAddField(0,classtext);
//$value就是字段内容。取得多个字段内容:$value=ReturnZtAddField(1,ztid,classtext);
//$value[classtext]才是字段内容。

内容页

[!–info.next–]下一篇 [!–info.pre–]上一篇

万能标签用[!–onclick–] 灵动标签用<?=$bqr[onclick]?> 点击量

复制代码 代码如下:

$titleurl=sys_ReturnBqTitleLink($navinfor); 获得当前页面的网址
$url = “http://”.$_SERVER
[‘HTTP_HOST’].$_SERVER[‘PHP_SELF’]; 获得当前页面的网址

sql语句

复制代码 代码如下:

<?php 
//报名人数 
$num=$empire->gettotal(“select count(*) as total from
phome_enewsfeedback where kft='”.$navinfor[title].”‘”);
?>

帝国CMS经常用到的调用sql语句:

请注意,如果是帝国7.0版本的,需要将checked=1去掉

复制代码 代码如下:

  1,根据最新文章 select * from [!db.pre!]ecms_news where
checked=1 order by newstime desc limit 10
  2,根据推荐文章 select * from [!db.pre!]ecms_news where
checked=1 and isgood=1 order by newstime desc limit 10
  3,根据热门文章 select * from [!db.pre!]ecms_news where
checked=1 order by onclick desc limit 10
  4,根据头条新闻 select * from [!db.pre!]ecms_news where
checked=1 and firsttitle=1 order by newstime desc limit 10
  5,根据评论排行 select * from [!db.pre!]ecms_news where
checked=1 order by plnum desc limit 10
  6,根据digg排行 select * from [!db.pre!]ecms_news where
checked=1 order by diggtop desc limit 10
  7,根据投票排行 select * from [!db.pre!]ecms_news where
checked=1 order by votenum desc limit 10
  8,根据下载排行 select * from [!db.pre!]ecms_news where
checked=1 order by totaldown desc limit 10
  9,根据评分排行 select * from [!db.pre!]ecms_news where
checked=1 order by infopfen desc limit 10

小技巧收录:

php三元条件运算符:

复制代码 代码如下:

<?=$bqr[‘ftitle’]?$bqr[‘ftitle’]:$bqr[‘title’]?>

灵动或者php查询调用编辑器内容的时候要加stripslashes删除反斜杠比如:

复制代码 代码如下:

<?=stripslashes($r[‘newstext’])?>

内容页当前信息ID:

复制代码 代码如下:

$navinfor[‘id’]

列表内容模板信息ID:

复制代码 代码如下:

$r[‘id’]

当前栏目名:

复制代码 代码如下:

$class_r[$GLOBALS[‘navclassid’]][‘classname’];

当前栏目父栏目:

复制代码 代码如下:

$class_r[$GLOBALS[‘navclassid’]][‘bclassid’];

当前栏目别名:

复制代码 代码如下:

$class_r[$GLOBALS[‘navclassid’]][‘bname’];

当前栏目子栏目:

复制代码 代码如下:

$class_r[$GLOBALS[‘navclassid’]][‘sonclass’];

当前栏目子判断是否为终级栏目:

复制代码 代码如下:

$class_r[$GLOBALS[‘navclassid’]][‘islast’];

当前栏目是否有已审核信息:

复制代码 代码如下:

$GLOBALS[‘num’]==0为没有信息

帝国cms中引入php路径写法(例子是文件在根目录)

复制代码 代码如下:

<?php include(ECMS_PATH.”./bottom.php”);?>

排除置顶、头条、推荐等,sql附加条件:

复制代码 代码如下:

‘istop=0 and isgood=0 and firsttitle=0’

上上级栏目id:

<?php
$bclassid=$class_r[$GLOBALS[navclassid]][bclassid];
$bbclassid=$class_r[$bclassid][bclassid];
echo $bbclassid;
?>
$bbclassid就是上上级父栏目id

投稿、登陆、反馈、留言等之后跳转指定页面:

复制代码 代码如下:

<input type=hidden name=ecmsfrom value=”返回页面地址”>

统计信息被收藏数:

复制代码 代码如下:

<?
$favas=$empire->gettotal(“select count(*) as total from
{$dbtbpre}enewsfava where id=’$navinfor[id]’ and
classid=’$GLOBALS[navclassid]'”);
?>
<?=$favas?>就是这条信息的收藏数

列表、结合项判断当前没有信息给出提示:

<?
if($GLOBALS[‘num’]==’0′){
?>
<p>对不起,暂时没有任何信息!</p>
<?
}else{
?>
[!–empirenews.listtemp–]<!–list.var1–>[!–empirenews.listtemp–]
<?
}
?>
[/code]

动态使用:

网站名称:<?=$public_r[‘sitename’]?>
网站地址:<?=$public_r[‘newsurl’]?>

帝国自身的时间转换函数:

复制代码 代码如下:

<?=format_datetime($bqr[newstime],’Y-m-d’)?>

此函数自带判断,比较不错,推荐。

判断内容是否有图片,没有图片则显示文中广告 有图片则不显示:

复制代码 代码如下:

<?php
$string=$navinfor[‘newstext’];//内容字段
$some=”<img “;
$num=explode($some,$string);
if(count($num)>1){//判断内容中是否有图片
?>
[!–newstext–]
<?
}else{
?>
<div id=”ad”>我是广告</div>
[!–newstext–]
<?
}
?>

截取加过滤标签:

复制代码 代码如下:

<?=esub(htmlspecialchars(strip_tags($navinfor[newstext])),160)?>

内容页或灵动标签支持标题属性
内容页:

复制代码 代码如下:

<?=DoTitleFont($navinfor[titlefont],$navinfor[title])?>

灵动标签:

复制代码 代码如下:

<?=DoTitleFont($bqr[titlefont],$bqr[title])?>

标题截取字数+标题属性:

复制代码 代码如下:

<?=DoTitleFont($bqr[titlefont],esub($bqr[title],32,’…’))?>

发表评论

电子邮件地址不会被公开。 必填项已用*标注