在使用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 ="/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;
- }