帝国cms不同列表页调用不同分页样式的写法(对于该死的trylife的技巧的说明)...

帝国cms不同列表页调用不同分页样式的写法(对于该死的trylife的技巧的说明)

要想搞定这个问题,首要的问题是要搞明白帝国cms解析原理,其实帝国不是模板引擎进行解析的,它只是替换

$listtemp=str_replace('[!--show.listpage--]',$listpage,$listtemp);

一般如果按照模板引擎编译解析的方式,会选将所有变

量性质的标签直接通过定界符判断出是标签,然后统一使用正则

进行解析,而帝国的处理方式是一个个单独处理,所以就出现像

上面的那样,$string为读取出来的模板内容,然后一步一步逐一

替换处理,典型的早期的动易、新云等ASP类CMS的标签的处理

方式。

知道上面这个就好理解如何做帝国自定义分页了。

这里还有两个知道点

1、自定义函数如何写,写在哪里

e/class/userfun.php

这个文件是帝国定义的使用者写自己函数的地方。

2、要知道帝国的列表页是如何解析的。这里要知道哪个文件是干解析用的

e/action/ListInfo/index.php

仔细阅读源码会发现,帝国是如何解析分页这个业务逻辑的

//分页
//$public_r['Pstaticlistpagefun']="myInfoUsePage";$listpage=InfoUsePage($num,$line,$page_line,$start,$page,$search,$pagefunr);

if($pagefunr['rewrite']==1||$pagefunr['repagenum'])//它是伪静态时或是静态页时的业务

{

    $listpage=myInfoUsePage($num,$line,$page_line,$start,$page,$search,$pagefunr);//它是动态时走的判断

}

else

{

    $listpage=page1($num,$line,$page_line,$start,$page,$search);

}

由上可知trylife之所以称其为该死,因为它只是判断了静态和伪静态,至于动态,这逼没有说,也许是故意没有说的吧,小般小白是不可能分析出来的,怎么试也试不出结果来的哈哈哈

转载于:https://my.oschina.net/u/2294923/blog/1503565

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值