如何自定义destoon的地址生成规则

分类栏目:destoon实战

55

在使用destoon的过程中需要对地址规则进行重写,那么如何实现,

destoon的列表的地址规则是定义在/api/url.inc.php,然后又是在include/global.func.php中进行的listpages这个函数调用实现


if($page < 1 || $page > $total) $page = 1; $home_url = $MOD['linkurl'].$CAT['linkurl']; $demo_url = $MOD['linkurl'].listurl($CAT, '{taomodi_page}'); //这个地方加入自定义的规则就可以了 if($MOD['moduleid']==21) { $demo_url ="http://www.dtmuban.com/nl".$CAT["catid"]. listurl($CAT, '{taomodi_page}'); } $pages = '';

而频道首页的地址规则则是在pages这个函数中进行的调用


function pages($total, $page = 1, $perpage = 20, $demo = '', $step = 3) {


如果要变首页列表地址的规则在demo这个参数上写上自己定义的规则就可以了,那么如何加入自己规则呢

首页的模板一般是通过tag这个函数来进行调用显示的,可以在tag函数中加入对ID的判断呢?在include/tag.func.php中if($showpage),这个地方加入自己定义的规则就可以了


if($moduleid==5) $pages=pages($num, $page, $pagesize,"/sell_{taomodi_page}/"); if($moduleid==21) $pages=pages($num, $page, $pagesize,"/news_{taomodi_page}/");


一般情况下这样做就可以实现了,如果还不能达到要求,可以自己写一段代码

面包屑导航的cat_pos,这个地方如果需要自定义就可以根据ID号自己进行判断了


foreach($arrparentid as $catid) { if(!$catid ) continue; if( $CATEGORY[$catid]['moduleid']==5) $pos .= '<a href="/a1'. $catid.'/"'.$target.'>'.$CATEGORY[$catid]['catname'].'</a>'.$str; if( $CATEGORY[$catid]['moduleid']==21) $pos .= '<a href="/nl'. $catid.'/"'.$target.'>'.$CATEGORY[$catid]['catname'].'</a>'.$str; }