自定义destoon6.0的地址生成规则

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自定义destoon6.0的地址生成规则相关的知识,希望对你有一定的参考价值。

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

顺便分享下,自己这段时间做的行业b2b平台,圆柱模板 http://zhimo.yuanzhumuban.cc/ -支模网

以上是关于自定义destoon6.0的地址生成规则的主要内容,如果未能解决你的问题,请参考以下文章

destoon6.0批量修改浏览次数值SQL语句

YbSoftwareFactory 代码生成插件二十四:MVC中实现动态自定义路由

destoon6.0获取当前分类和子类

VS Code中自定义Emmet代码片段

vscode自定义Tab填充提高代码编写效率

destoon6.0调用公司设置任意信息的方法-最新