您当前的位置:首页 > 网站建设 > 帝国cms
| php | asp | css | H5 | javascript | Mysql | Dreamweaver | Delphi | 网站维护 | 帝国cms | React | 考试系统 | ajax | jQuery |

帝国CMS:灵动标签应用大汇总 [教程+技巧]

51自学网 2020-03-20 10:45:12
  帝国cms
帝国CMS:灵动标签应用大汇总 [教程+技巧]

使用灵动标签首先要在系统参数设置---信息设置---模板支持程序代码(开启)

[e:loop={"sql语句",500,24,0}]
[e:loop={"select * from [!db.pre!]ecms_news where id='$navinfor[id]'",1,24,0}]
$navinfor[字段]
<?=DoTitleFont($bqr[titlefont],esub($bqr[softname],20))?>   设置softname的截取数和文字样式
$GLOBALS[navclassid] 栏目id

   [!db.pre!]   表前缀

   $bqr[字段名] 字段值        调用方法:<?=$bqr[字段名]?>

   $bqsr[titleurl] 标题连接

   $bqsr[classname] 栏目名

   $bqsr[classurl] 栏目连接地址

   $bqno   调用序号

$class_r[$GLOBALS[navclassid]][classpath]        栏目文件夹名

$class_r[$GLOBALS[navclassid]][classname]          当前栏目名称
应该下面的都以此类推,但是没有试过啊,O(∩_∩)O~

   $public_r[newsurl] 网站地址

   $bqr[lurl] 友情连接地址

   $bqr[lname] 友情连接网站名称

$navinfor[title] 当前信息的title字段
(同理$navinfor[id]为当前信息的id字段)
$bqr2=$empire->fetch1("select morepic from ecms6_ecms_photo_data_{$bqr[stb]} where id='$bqr[id]'");

查询数据库中的 morepic 作为一个数组 赋值给$bqr2这个变量
使之可以用 $bqr2[morepic] 这样循环数组

也可以select 多个字段用$bqr2[字段名]调用
灵动本身就支持PHP
你直接用strip_tags函数就可以办到
用法
http://www.w3school.com.cn/php/func_string_strip_tags.asp
灵动标签可以使用php的所有函数,比如你说的过滤html函数strip_tags($bqr[字段])


[e:loop={栏目ID,显示条数,操作类型,只显示有标题图片}]
模板代码内容
[/e:loop]
[e:loop={34,3,0,0}]
模板代码内容
[/e:loop]
<a href="http://www.phome.net " target="_blank" title="帝国网站">帝国网站管理系统6.0正式版开源发布</a>[11-08]
<a href="<?=$bqsr[titleurl]?>" target="_blank" title="<?= $bqr[title] ?> " ><?=esub($bqr[title],36)?></a>[<?=date('m-d',$bqr[newstime])?>]
<img src="<?= $bqr[titlepic] ?> "
时间格式 11-08         <?=date('m-d',$bqr[newstime])?>
            2010-01-06     <?= date('Y-m-d',$bqr[newstime])?>
2010-01-13 16:57:11                <?= date('Y-m-d H:i:s',$bqr[newstime])?>
上面的时间都是6.0版本的,5.1版本的是2010-01-06     <?=format_datetime($bqr[newstime],'Y-m-d')?>
上面的都是用在列表模板的,用在内容页面的[!--newstime--] 要搭配时间显示格式来使用


灵动标签中标题加红加粗问题 <?=$bqr[title],36?>这个替换成 <?=DoTitleFont($bqr[titlefont],$bqr[title],36)?>
文件简介用 <?=sub($bqr[smalltext],0,250,false)?>
list.var 里不可以加灵动标签 但可以加php语句 不过需要勾选使用程序代码



灵动标签列表面调用当前父栏目下的所有子栏目
<?
$bclassid = $class_r[$GLOBALS[navclassid]][bclassid]; //获取当前父栏目ID
?>
[e:loop={"select classid,classname,classpath from [!db.pre!]enewsclass where bclassid = '$bclassid' order by classid",0,24,0}]<!-取得父栏目下的子栏目->
<li><a href="<?=$public_r[newsurl].$bqr[classpath]?>/"><?=$bqr[classname]?></a></li>
[/e:loop]


目录:

一、灵动标签应用之“调用友情链接”
二、灵动标签应用之“调用栏目导航且当前栏目高亮显示”
三、灵动标签应用之“调用信息且当天信息New标志显示”
四、灵动标签涌涌至“调用DZ,PW论坛最新帖子”



一、灵动标签应用之“调用友情链接”。

众所周知帝国的友情链接调用标签生成出来的代码是Table的,不符合标准,所以我们用灵动标签调用友情链接。

代码:

<ul class="links_text">
[e:loop={'select * from [!db.pre!]enewslink where checked=1 order by lid',20,24,0}]
<li><a href="<?=$bqr[lurl]?>"><?=$bqr[lname]?></a></li>
[/e:loop]
</ul>

说明:本灵动标签是调用文字友情链接,需要图片友情链接的用户只需要简单修改举一反三便可,鄙视懒惰到极点的菜鸟。

二、灵动标签应用之“调用栏目导航且当前栏目导航高亮显示”。

本灵动标签实现的功能是实现调用栏目导航且当前栏目高亮JS实现。

效果:



代码:

<ul>
<li><a href="/" title="首页" target="_self">首 页</a></li>
[e:loop={'select classid,classname,classpath from photo_enewsclass order by classid',0,24,0}]
<li class="" id="cid<?=$bqr[classid]?>"> <a href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>" title="<?=$bqr[classname]?>" target="_self" ><?=$bqr[classname]?></a></li>
[/e:loop]
<li class="posr"><a href="/top" title="排行榜" target="_self">排行榜</a></li>
</ul>
<script>
var changeclass=window.document.getElementById('cid[!--self.classid--]');
changeclass.className='active';
</script>

说 明:SQL语句自己研究下不多说,至于<li class="" id="cid<?=$bqr[classid]?>"> 是给li让系统自动获取当前栏目的id并且定义li的id,然后下面JS就是判断如果是当前ID 侧定义li的class是active;也就是changeclass.className='active';您可以把active改成您想要的CSS Class名称。

三、灵动标签应用之“调用信息当天信息加New标志”

本功能实现调用信息时候如果是当天发布的最新信息显示New标志图片。

代码:

<ul>
[e:loop={栏目ID,显示条数,操作类型,只显示有标题图片}]
<?
$newimg="";
if(date("m-d",$bqr[truetime])==date("m-d"))
{
$newimg="<img src='New图片地址'>";
}
?>
<li>
<a href="<?=$bqsr[titleurl]?>" target="_blank"><?=sub($bqr[title],0,10,false)?></a><?=$newimg?>
</li>
[/e:loop]
</ul>

说明:首先定义newimg为空如果日期=当天则显示New图片,用<?=$newimg?>在您想要的适当位置调用。

四、灵动标签应用之“调用DZ,PW论坛帖子”。

调用Discuz最新贴子:cdb_是discuz的表前缀
<table width="100%" border="0" cellspacing="1" cellpadding="3">
[e:loop={"select tid,subject from cdb_threads order by tid desc limit 10",10,24,0}]
<tr><td>
<a href="/bbs/viewthread.php?tid=<?=$bqr[tid]?>" target="_blank"><?=$bqr[subject]?></a>
</td></tr>
[/e:loop]
</table>

调用PHPwind最新贴子:pw_是phpwind的表前缀
<table width="100%" border="0" cellspacing="1" cellpadding="3">
[e:loop={"select tid,subject from pw_threads order by tid desc limit 10",10,24,0}]
<tr><td>
<a href="/bbs/read.php?tid=<?=$bqr[tid]?>" target="_blank"><?=$bqr[subject]?></a>
</td></tr>
[/e:loop]
</table>

下载地址:
个性化功能需求等原因而对帝国CMS进行二次开发
OAuth 2.0 的一个简单解释
51自学网,即我要自学网,自学EXCEL、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。
京ICP备13026421号-1