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


在使用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, '{destoon_page}');
//这个地方加入自定义的规则就可以了
if($MOD['moduleid']==21)
{
$demo_url ="/nl".$CAT["catid"]. listurl($CAT, '{destoon_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_{destoon_page}/");
if($moduleid==21) $pages=pages($num, $page, $pagesize,"/news_{destoon_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;
}

一次赞助,终身免费~
欢迎来咨询哦 欢迎来咨询哦