phpcms分类筛选功能,phpcms搜索功能(类似淘宝、活动、产品,功能通用)

如下图所示功能:


<?php

/**
 *  extention.func.php 用户自定义函数库
 *
 * @copyright            (C) 2005-2010 PHPCMS
 * @license                http://www.phpcms.cn/license/
 * @lastmodify            2010-10-27
 */
      /**
     * 通过指定keyid形式显示所有联动菜单
     * @param  $keyid 菜单主id
     * @param  $linkageid  联动菜单id,0调用顶级
     * @param  $modelid 模型id
     * @param  $fieldname  字段名称
     */
     function show_linkage($keyid, $linkageid = 0, $modelid = '', $fieldname='zone') {  
            $datas = $infos = $array = array();  
            $keyid = intval($keyid);  
            $linkageid = intval($linkageid);  
            //当前菜单id  
            $field_value = intval($_GET[$fieldname]);  
            $urlrule = structure_filters_url($fieldname,$array,1,$modelid);  
            if($keyid == 0) return false;  
            $datas = getcache($keyid,'linkage');  
            $infos = $datas['data'];  
      
            foreach($infos as $k=>$v){  
                    if($v['parentid']==$field_value){  
                            $array[$k]['name'] = $v['name'];  
                            $array[$k]['value'] = $k;  
                            $array[$k]['url'] = str_replace('{'.$fieldname.'}',$k,$urlrule);  
                            $array[$k]['menu'] = $field_value == $k ? '<em>'.$v['name'].'</em>' : '<a href='.$array[$k]['url'].'>'.$v['name'].'</a>' ;  
                            }  
            }  
            return $array;  
      }
    /**
     * 构造筛选URL
     */  
      function structure_filters_url($fieldname,$array=array(),$type = 1,$modelid) {  
            if(empty($array)) {  
                    $array = $_GET;  
                    } else {  
                            $array = array_merge($_GET,$array);  
                            }  
            //TODO  
            $fields = getcache('model_field_'.$modelid,'model');  
            if(is_array($fields) && !empty($fields)) {  
                            ksort($fields);  
                            foreach ($fields as $_v=>$_k) {  
                                    if($_k['filtertype'] || $_k['rangetype']) {  
                                            if(strpos(URLRULE,'.html') === FALSE) $urlpars .= '&'.$_v.'={$'.$_v.'}';  
                                            else $urlpars .= '-{$'.$_v.'}';  
                                          

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值