2012年3月11日星期日

栏目页调用专题名称

勾选list.var支持程序代码

list.var模板内容:

$ztr=explode(‘|’,$r[ztid]);

$ztid=$ztr[1];

$ztname=$class_zr[$ztid][ztname];

$zturl=’/’.$class_zr[$ztid][ztpath];

$listtemp='[<a href=”‘.$zturl.'”>’.$ztname.'</a> ] <a href=”[!–titleurl–]” target=”_blank”>[!–title–]</a><span>[!–newstime–]</span>’;

用灵动标签灵活调用上一篇和下一篇的代码

<!–上一篇–>

[e:loop={‘selfinfo’,1,0,0,’id<‘.$navinfor[id].”,’id desc’}]

<a href=”<?php

echo $bqsr[titleurl];

$pre=’true’;

?>”>上一篇:<?=$bqr[title]?>

</a>

[/e:loop]

<?php

if(empty($pre)){

echo “上一篇:很抱歉没有了”;

}

?>

 

<!–下一篇–>

[e:loop={‘selfinfo’,1,0,0,’id>’.$navinfor[id].”,’id asc’}]

<a href=”<?php

echo $bqsr[titleurl];

$next=’true’;

?>”>下一篇:<?=$bqr[title]?>

</a>

[/e:loop]

<?php

if(empty($next)){

echo “下一篇:很抱歉没有了”;

}

?>

 

四: 控制上一篇下一篇标题字数截取30个字符为例

 

运用:<?=esub($bqr[title],30)?>

 

<!–上一篇–>

[e:loop={‘selfinfo’,1,0,0,’id<‘.$navinfor[id].”,’id desc’}]

<a href=”<?php

echo $bqsr[titleurl];

$pre=’true’;

?>”>上一篇: <?=esub($bqr[title],30)?></a>

[/e:loop]

<?php

if(empty($pre)){

echo “上一篇:很抱歉没有了”;

}

?>

 

<!–下一篇–>

[e:loop={‘selfinfo’,1,0,0,’id>’.$navinfor[id].”,’id asc’}]

<a href=”<?php

echo $bqsr[titleurl];

$next=’true’;

?>”>下一篇:<?=esub($bqr[title],30)?>

</a>

[/e:loop]

<?php

if(empty($next)){

echo “下一篇:很抱歉没有了”;

}

?>

帝国CMS排行榜的调用方法

A.首先要说明,目前排行调用实现的是:一周(一月,一年)内新增的信息,按点击排行的调用.

目前的排行调用方式,比较适合新闻网站,缺点是,如果本周无更新,就什么也调不出来了。例如一天没更新,后台的24小时排行常常是无内容。具体方法:

 

问:帝国是否可以实现类似本月热点排行之类的功能

 

前提是开启标签支持SQL语句。

SQL标签的应用

已带模版的标签为例:

[ecmsinfo]”select * from phome_ecms_news where newstime > UNIX_TIMESTAMP()-86400*30 order by onclick desc limit 10″,10,30,0,24,7,0[/ecmsinfo]

 

30 是天,当然你也可以修改为7,365,1000,自己修改合适的时间。

10 是调用多少条,自己修改为合适。

24 是SQL标签的类型,必须为24系统才会执行前面的SQL。

 

问:能否指定栏目调用呢?

[ecmsinfo]”select * from phome_ecms_news where newstime > UNIX_TIMESTAMP()-86400*30 AND classid in(‘2′,’3’) order by onclick desc limit 10″,10,30,0,24,7,0[/ecmsinfo]

 

注意红色部分:可以填写你需要调用的栏目ID(注意:必须为终极类)

 

问:那调用当前栏目呢?这样模就更自动化了。

 

首先要使模版支持程序代码:

具体操作:后台—系统设置—参数设置—信息设置—模板是否支持程序代码:选择(是)

标签如下:

global $navclassid;

?>

[ecmsinfo]”select * from phome_ecms_news where newstime > UNIX_TIMESTAMP()-86400*30 and classid=$navclassid order by onclick desc limit 10″,10,30,0,24,7,0[/ecmsinfo]

 

注意红色部分:

global $navclassid;,是使列表模版支持$navclassid变量($navclassid为当前栏目ID的变量)。

classid=$navclassid,条件语句,只调用栏目ID=当前栏目ID的文章。

 

问:我要在内容页调用当前内容页所属栏目的分时热门新闻呢?

 

[ecmsinfo]”select * from phome_ecms_news where newstime > UNIX_TIMESTAMP()-86400*30 and classid='”.$navinfor[classid].”‘ order by onclick desc limit 10″,10,30,0,24,7,0[/ecmsinfo]

自定义信息排序字段,轻松搞定前台列表信息的排序

实现在文章前台排序,一直是我的个人愿望,其中一个原因是,我早期做的大都是教学网站,很多东西与课本同步,把一册的内容按课本顺序排列好,方便用户查看,还可以随时修改它们的顺序,这对网站的人性化很重要。可惜一直没有机会在帝国cms中作此尝试。下了点功夫还真搞定了,为了方便其他同仁偷懒,特备忘如下:

首先,在需要排序的信息模型中增加一个自定义字段用来排序,比如在新闻数据表增加一个newsnumber字段,字段名为newsnumber,字段类型选择INT(大型数值),输入表单显示元素使用单行文本框,其他的东西默认就好。然后修改系统模板,让这个字段可以录入、修改和增加,并能在列表模板和内容模板中使用。

接下来,用灵动标签通过sql查询的方式调用,代码样式如下:

[e:loop={‘select * from phome_ecms_news where classid=6 order by newsnumber asc limit 5′,5,24,0}]<LI><A title='<?=$bqr[title]?>’ href=”<?=$bqsr[titleurl]?>”><?=esub($bqr[title],32,’…’)?></A></LI>[/e:loop]

看看以上代码大家应该明白了,classid=你要调用的栏目id,by空格之后的newsnumber其实就是使用newsnumber这个我们在后台增加的排序字段来排序,这里的排序方式是asc 是英文单词ascend 的缩写,是升序的意思,这样可以升序方式排列数据,你也可以把它改为desc,desc是英文单词descend 的缩写,这样可以降序排列数据。很简单吧?

前台用灵动标签调用友情链接的排序分享

网上用得比较多的是按照后台添加的先后顺序排序:

<!– 文字链接 –>

[e:loop={‘select * from [!db.pre!]enewslink where checked=1 and lpic=”” order by lid’,20,24,0}]

<li><a href=”<?=$bqr[lurl]?>”><?=$bqr[lname]?></a></li>

[/e:loop]

 

区别在于是按lid还是按myorder排序。

 

 

这是按照后台设置的大小顺序排序:

<!– 文字链接 –>

[e:loop={‘select * from [!db.pre!]enewslink where checked=1 and lpic=”” order by myorder’,20,24,0}]

<li><a href=”<?=$bqr[lurl]?>”><?=$bqr[lname]?></a></li>

[/e:loop]

 

这是友情连接的下拉形式:

<form id=”form1″ name=”form1″ method=”post” action=””>

<label for=”FRIEND LINK “>友情链接:</label>

<select name=”FRIEND LINK” size=”1″ id=”FRIEND LINK”>

[e:loop={‘select * from [!db.pre!]enewslink where checked=1 order by lid’,20,24,0}]

<option value=”<?=$bqr[lurl]?>”>

<?=$bqr[lname]?>

</option>

[/e:loop]

</select>

</form>

帝国cms 在列表和内容页获取栏目链接

<?$r[‘classid’]=$GLOBALS[navclassid];$classurl=sys_ReturnBqClassname($r,9);echo $classurl;?>

帝国cms留言前台ip显示方法

首先打开e\data\template\gbooktemp.txt文件,

找到$query=”select lyid,name,email,`call`,lytime,ip,lytext,

这一行,加入ip,

然后在后台修改留言板模板,加入:<?=$r[ip]?>代码即可。

灵动标签列表面调用当前父栏目下的所有子栏目

<?

$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]

2012年3月5日星期一

CentOS 5.5 文本模式安装

一、安装前提条件:

1. VMware Workstation或者Oracle VM VirtualBox,没有的可以GOOGLE一下

2. CentOS-5.5-i386-bin-DVD.iso,很多大型LINUX相关网站都提供下载

3. 虚拟机软件的安装和虚拟机创建过程略。虚拟机分配512MB内存,虚拟磁盘大小为6GB。

 

二、CentOS系统的安装:

1. 开机光盘启动,进入如下启动画面,输入linux text后回车;

2. 选择Skip,跳过光盘介质的测试;

3. 点击OK继续;

4. 安装过程中的语言选择画面,这里我们选择English;

5. 键盘布局选择us,美式键盘;

6. 告警信息提示我们磁盘上之前的数据会被初始化而丢失,选择Yes继续;

7. 磁盘分区画面,这里我们选择“Create custom layout”自定义分区大小,选择OK继续;

8. 将光标移到“Free space”上,按键盘的F2键,新建分区;

9. 分区挂载点输入/boot,文件系统类型选择ext3,分区大小100MB固定大小,强制设置这个分区为主分区,之后选择OK;

10. 这时我们可以看到/boot挂载点已经建好了。将光标移到“Free space”上,按键盘F2键,创建新的分区;

11. 文件系统类型选择swap,固定大小256MB,强制设为主分区,之后选择OK。需要说明的是,swap交换分区的大小一般设置为物理内存的1.5至2倍;

12. 之后我们创建根分区,挂载点输入/,文件系统类型ext3,使用全部可用的磁盘空间,强制其为主分区,之后点击OK;

13. 分区明细如下图,之后按键盘的F12继续;

14. 由于设置的swap空间(258M)小于物理内存(512M),系统会提示我们有可能影响性能,选择Yes继续;

15. 引导程序选择界面,这里我们使用GRUB Boot Loader,选择OK继续;

16. 有时候我们需要调用特定的参数来启动系统,这时就需要在这个画面输入该参数。默认启动的话,直接选择OK继续;

17. 高安全级别的情况下,有时需要设置引导程序的密码,不过一般不需要设置,点击OK继续;

18. 多系统环境中,在这个画面可以选择默认启动的系统。这里我们只是单系统环境,选择OK继续;

19. 引导程序的安装位置,我们选择主引导扇区(MBR),选择OK;

20. 是否配置eth0网卡,选择OK;

21. 选择系统启动时激活,并启动IPv4支持;

22. 选择手动配置IP地址,根据实际环境输入IP地址和子网掩码;

23. 根据实际环境输入网关地址和DNS地址;

24. 手动输入主机名称,之后选择OK继续;

25. 时区选择画面,这里我们选择“Asia/Shanghai”;

26. 输入root账号的密码;

27. 要安装的软件程序包的选择画面,这里我们取消掉所有“*”的选项,之后选择“Customize software selection”来自定义安装;

28. 一般情况下,只需选择:base(基本环境)、development librarys(开发库)、development tools(开发工具)、editors(编辑器)、system tools(系统工具)、X software development(图形界面开发软件);

 

29. 提示我们安装过程的完整日志会保存在/root/install.log中,选择OK继续;

30. 安装进行中;

31. 安装完成,将安装光盘弹出,之后重启系统;

32. 第一次启动后会出现如下界面。如果30秒内没有操作则会自动跳过进入命令提示符。之后也可以使用setup命令调用这个界面;

33. 在命令提示符界面,我们输入root账号和密码进入系统。之后输入setup;

34. 选择“Firewall Configuration”回车;

35. 将防火墙状态设置为Disabled,SELinux设置为Disabled,选择OK;

36. 选择“System services”后回车;

37. 保留crond、network、sshd、syslog服务,其他一律禁用;

38. 系统安装完成。

2012年3月3日星期六

帝国CMS标题如何显示头条/置顶/推荐标识方法

帝国CMS,如果文章包含图片,或者文章是置顶的,需要我们以3天内的发布为条件输出带 new 图标的信息(首页模板上的灵动标签格式):

 

帝国CMS标题显示头条/置顶/推荐标识代码如下:

 

[e:loop={栏目ID,显示条数,操作类型,只显示有标题图片}]

<?

$newimg=””;

if(time()-$bqr[truetime]<=3*24*3600)

{

$newimg=”<img src=’New图片地址’>”;

}

?>

<li>

<a href=”<?=$bqsr[titleurl]?>” title=”<?=$bqr[title]?>” target=”_blank”><?=esub($bqr[title],36)?></a><?=$newimg?>

</li>

[/e:loop]

 

注:字段值数组变量为$bqr,对应的字段变量为$bqr[字段名],如:标题字段变量就是$bqr[title]。

首先在列表模板上勾选”使用程序代码”,我们以推荐为条件输出带 new 图标的信息(列表页模板 【列表内容模板(list.var) 】上的格式):

 

复制代码代码如下:

 

$newimg=”;

if($r[isgood]==1)

{

$newimg='<img src=’New图片地址’>’;

}

$listtemp='<li><a href=”http://www.alonely.com.cn/Ecms/20120217/4510.html” title=”[!–oldtitle–]”>[!–title–]</a>’.$newimg.'</li>’;

 

注:字段值数组变量为$r,对应的字段变量为$r[字段名],如:标题字段变量就是$r[title]。另外定义的变量为’.$newimg.’ 。将最终模板内容赋给$listtemp变量。

更多首页模板上的条件收集:

 

复制代码代码如下:

 

if($bqr[isgood]==1) //推荐

if($r[firsttitle]==1) //头条

if($r[istop]==1) //置顶

if($bqr[isgood]==1&&$bqr[firsttitle]==1&&$bqr[istop]==1) //置顶-头条-推荐 (组合使用)

 

最后给出实际使用中的代码:

 

复制代码代码如下:

 

[e:loop={‘selfinfo’,20,0,0}]

<?

$newimg=””;

$good=””;

if(!empty($bqr[titlepic]))

{

$newimg=”<img src=’static/image/filetype/image_s.gif’ />”;

}

if($bqr[istop]==1)

{

$good = “<img src=’image/common/pin_1.gif’ />”;

}

?>

<tr class=”even”>

<td class=”title”>

<h1><a href=”<?=$bqsr[titleurl]?>” target=”_blank”><?=sub($bqr[title],0,30,false)?></a> &nbsp;<?=$newimg?> &nbsp;<?=$good?></h1>

<p class=”intro”>

<?=sub($bqr[smalltext],0,80,false)?>[<a title=”阅读全文” href=”<?=$bqsr[titleurl]?>” target=”_blank”>详细内容</a>]

</p>

</td>

<td><?=$bqr[myarea]?></td>

<td><?=date(‘Y-m-d H:i:s’, $bqr[newstime])?></td>

</tr>

[/e:loop] 在列表的题头显示相应的标识,后来用灵动标签实现了,这里记录一些,估计会有不少人会用到

帝国CMS灵动标签e:loop的怎么用

帝国 灵动标签 (e:loop) 是一种非常方便的高级使用方法,很多人都不会使用,今天我们就来细说下这个非常好的功能,有了它能很灵活的调用你想要的各种数据。

复制代码代码如下:

[e:loop={栏目ID/专题ID,显示条数,操作类型,只显示有标题图片,附加SQL条件,显示排序}]

模板代码内容

[/e:loop]

例子:

复制代码代码如下:

<table width=”100%” border=”0″ cellspacing=”1″ cellpadding=”3″>

[e:loop={栏目ID/专题ID,显示条数,操作类型,只显示有标题图片,附加SQL条件,显示排序}]

<tr><td>

<a href=”<?=$bqsr[titleurl]?>” target=”_blank”><?=$bqr[title]?></a>

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

</td></tr>

[/e:loop]

</table>

 

标签说明:灵动标签是无需做标签模板,且模板内容为PHP代码,因而更灵活,可以使用php所有处理函数。使用本标签,需开启模板支持程序代码(参数设置)。

参数:

栏目ID/专题ID:查看栏目ID点这里,查看专题ID点这里,当前ID=’selfinfo’,多个栏目ID与专题ID可用,号格开,如’1,2’。

显示条数:显示前几条记录。

操作类型:具体看操作类型说明。

只显示有标题图片:0为不限制,1为只显示有标题图片的信息。

附加SQL条件:附加调用条件,如:”title=’帝国'”。

显示排序:可指定按相应的字段排序,如:”id desc”。

变量说明:

$bqr:$bqr[字段名]:显示字段的内容

$bqsr:$bqsr[titleurl]:标题链接,$bqsr[classname]:栏目名称,$bqsr[classurl]:栏目链接

$bqno:$bqno:为调用序号

$public_r:$public_r[newsurl]:网站地址

常用函数介绍:

文字截取:esub(字符串,截取长度),例子:esub($bqr[title],30)截取标题前30个字符。

时间格式:date(‘格式字串’,时间字段),例子:date(‘Y-m-d’,$bqr[newstime])时间显示格式为”2008-10-01″。

实例1:如果信息为当天就加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?>在您想要的适当位置调用。

实例2:在灵动标签内使用SQL

[e:loop={‘select * from phome_ecms_news where classid=72 order by id DESC limit 6’,6,24,0}],注意倒数第二个参数为24,才可以使用SQL。

 

复制代码代码如下:

 

[e:loop={‘select * from [!db.pre!]ecms_news where classid=72 and type=’开发商’ order by id DESC limit 6′,6,24,0}]

<li class=”class1″> <a href=’http://www.hkqipilang.acafa.com/’ target=_blank title='<?=$bqr[title]?>’><?=$bqr[title]?></a>

<div class=”top_div_myAcafa_u”><?=$bqr[address]?>

业务范围: <?=$bqr[smalltext]?></div>

</li>

[/e:loop]&nbsp;&nbsp;

 

实例3:如果信息带有图片信息,则标题上带有图片标志

 

复制代码代码如下:

 

[e:loop={‘selfinfo’,20,0,0}]

<?

$newimg=””;

if(!empty($bqr[titlepic]))

{

$newimg=”<img src=’http://bbs.zhnews.net/bbs/static/image/filetype/image_s.gif’ />”;

}

?>

<tr class=”even”>

<td class=”title”>

<h1><a href=”<?=$bqsr[titleurl]?>” target=”_blank”><?=sub($bqr[title],0,24,false)?></a> <?=$newimg?></h1>

<p class=”intro”>

<?=$bqr[smalltext]?>[<a title=”阅读全文” href=”<?=$bqsr[titleurl]?>” target=”_blank”>详细内容</a>]

</p>

</td>

<td><?=$bqr[myarea]?></td>

<td><?=date(‘Y-m-d H:i:s’, $bqr[newstime])?></td>

</tr>

[/e:loop]

 

显示字段用<?=$bqr[字段]?>,$bqsr就几个变量:

$bqsr[titleurl]:标题链接

$bqsr[classname]:栏目名称

$bqsr[classurl]:栏目链接

$bqsr[titleurl]:标题链接

$bqsr[classname]:栏目名称

$bqsr[classurl]:栏目链接

除了这几个其他的都用$bqr。

openwrt 6300V2 USB无法显示的问题

lsusb and fdisk -l There's a method to turn USB power on which is probably not persistent. I hope this will help you. echo 0 > /sys/c...