小李SEO博客

网站优化服务

ReplaceListVars()帝国CMS函数

函数:ReplaceListVars()
功能:替换列表模板/标签模板/搜索模板
位置:帝国CMS e/class/connect.php

new_icon_demo.jpg

例子一:最新信息图标

ecms_min_ago.jpg

例子二:N分钟前信息 个性时间显示

修改例子一:最新信息 new图标

1.准备个图标放在e/trylife/common/images/title_new.gif
2.ReplaceListVars()函数体内return $listtemp;代码上方加入如下代码:


$new_icon='';
if((time()-$r[newstime])<86400)
{
$new_icon='<img src="'.$public_r[newsurl].'e/trylife/common/images/title_new.gif" />';
}
$listtemp=str_replace('[!----NewIcon--]',$new_icon,$listtemp);

3.列表模板VAR合适位置加入[!----NewIcon--]
5.刷新列表(动态列表就不用刷新了)

修改例子二:多少分钟前信息

1.e/class/userfun.php加入如下函数

view plaincopy to clipboardprint?
  1. //多少小时以前
  2. functiontrylife_TimePass($newstime,$formatdate)
  3. {
  4. //过去的秒钟数
  5. $p=time()-$newstime;
  6. if($p<60)
  7. {
  8. return'<spanstyle="color:red;"><strong>'.$p.'</strong>秒前</span>';
  9. }
  10. elseif($p<3600)
  11. {
  12. return'<spanstyle="color:green;"><strong>'.floor($p/60).'</strong>分钟前</span>';
  13. }
  14. elseif($p<86400)
  15. {
  16. return'<spanstyle="color:blue;"><strong>'.floor($p/3600).'</strong>小时前</span>';
  17. }
  18. elseif($p<2592000)//30天
  19. {
  20. return'<spanstyle="color:gray;"><strong>'.floor($p/86400).'</strong>天前</span>';
  21. }
  22. else
  23. {
  24. returnformat_datetime($newstime,$formatdate);
  25. }
  26. }

2.ReplaceListVars() 函数体内修改片段

view plaincopy to clipboardprint?
  1. elseif($f=='newstime')//时间
  2. {
  3. //$value=date($formatdate,$value);
  4. //$value=format_datetime($value,$formatdate);
  5. $value=trylife_TimePass($value,$formatdate);
  6. $spf=1;
  7. }

讨论:

1.实现例子中效果的方法很多,比如使用列表模板VAR支持动态代码 在模板VAR中进行判断
2.如果不是整站需要此类的功能,还是讨论1中的方法会节省整体效率
3.ReplaceListVars()支持对列表模板/标签模板/搜索模板的替换,其他情况下比如使用灵动标签的情况还需要重写相同代码到模板中,使用情况多的话,还是将返回图标功能写成函数定义到e/class/userfun.php中,这样就可以重复使用~~
4.例子二 实际应用页面生成的是HTML的话 用JS更为合理~~ 节省资源和时间实时

相关帝国cms文章阅读
  • 帝国CMS高级应用—灵动标签调用二级导航循环子栏目和信息

    帝国CMS高级应用 灵动标签调用二级导航 循环子栏目和信息: div class=navdiv class=nav div class=nav-inner div class=clearfix nav-inner id=menu ul class=navlist lia href=!---news.url--]span网站首页/span/a/li [e:loop={select cla...

  • 帝国cms2014年核心网站模板有哪些

    2014年开始做过的修过的移植过的很多模板,一个资源站的模板演示地址全自动支付发货系统。 养生站点,适合做新闻资讯类的站点,...

  • 帝国CMS高级应用—SQL调用会员空间反馈信息

    如题,会员空间反馈信息调用。 代码如下: ? //会员空间反馈 调用 //userid='1' 会员ID $sql=$empire-query(select ftext,uname,uid from {$dbtbpre}enewsmemberfeedback where userid='1' order by fid desc limit 8); while($r=$empire-...

  • 帝国CMS信息置顶扣除相应积分

    首先在所需的系统模型中添加int字段 top,单选按钮0,1(0为否,1为是)。主要修改e/class/qinfofun.php两处 一处为增加,一处为编辑。 在文件中找到esetcookie(lastaddinfotime,time(),time()+3600*24);下面到...

  • 帝国CMS分类信息过期时间设置(发布信息选择多久之后显示过期)

    分类信息有效期设置,如下图: 第一步:增加字段 gqtime 类型选择日期。 投稿表单替换html代码(增加字段时请留空)内容修改为: select name=gqtime id=gqtimeoption value=?echo date(Y-m-d,strtotime(+7day)); ??=...

  • 帝国CMS最终下载页面两种模板样式,提供下载!

    帝国默认的最终下载页面确实有点难看了!所以墨鱼抽空弄了两个模板,都支持自定义网盘字段 如果你有的话就可以显示出来了!默认字段名称:downurltext 或者pan_s,当然你可以改成你的,或...

  • 帝国CMS自定义列表查询SQL语句,怎么从第N条开始查询

    统计记录:select count(*) as total from [!db.pre!]ecms_news where id(select id from [!db.pre!]ecms_news order by id desc limit 10,1) and checked=1 查询记录:select * from phome_ecms_news where checked=1 order by newstime desc 从第10条是开...

  • 帝国CMSQQ登陆接口插件适用于所有帝国7.2版本

    ----------------------------------------------------------------------------- 插件名称:帝国CMS-QQ登录插件 插件作者:帝国CMS官方 插件介绍:帝国CMS系统的QQ登录插件。 官方网站:http://www.phome.net ------------...

  • 帝国cms清空管理员后台日志操作方法

    小李网络公司介绍帝国cms清空管理员后台日志操作方法知识,包括网站管理员登录页面管理员怎么查看成员积分手机管理员模式怎么打开网站管理员登录企业微信管理员是谁微信添加管理员怎么...

  • 帝国CMS后台登录成功又显示“您还未登录”的解决办法

    帝国CMS后台登录显示登录成功后,马上跳转显示您还未登录。 出现此问题是目录权限问题 /e/data/adminlogin 目录权限不可写导致,请将此目录权限设置为777权限即可解决...

  • 帝国CMS虚拟主机伪静态设置.htaccess

    帝国CMS建议直接生成静态页,但有时候也确实希望伪静态,这里以 帝国CMS7.0为例。PHP虚拟主机下设置伪静态: 1、确认空间支持伪静态,有些空间商的空间是需要手动开启伪静态功能的。 2、后...

  • 帝国CMS列表页按digg数排序

    如下图所示,列表页信息按digg数从大到小排序 方法: 栏目生成选项里设置排序:diggtop desc 即可...

SEO公司排名
联系人:李先生 合作咨询:13712967640(微信同号) 点击这里给我发消息
 
QQ在线咨询
SEM竞价推广
137-1296-7640
SEO优化外包
137-1296-7640