互补网网专做高品质CMS教程,所有教程均为站长亲测有效后发布。
您当前所在位置:互补网首页 > 迅睿CMS > 标签调用 >

迅睿cms实现栏目筛选功能的具体调用方法

发布时间:2021-10-18热度:0

有部分人用迅睿cms做分类信息型网站,里面会牵扯到筛选功能,那么用迅睿cms如何实现栏目字段自定义筛选功能呢,下面就来为大家提供出栏目字段筛选功能的做法。

在迅睿cms的demo/search.html 模块自带很多搜索示例的写法,例如:

<!--按【联动菜单】搜索-->

<div class="form-group row">

    <label class="col-md-2 control-label">联动菜单字段中文</label>

    <div class="col-md-9">

        <label><a class="label {if !$params.联动菜单字段英文名 || dr_linkage('联动菜单字段的联动菜单code值', $params.联动菜单字段英文名, 0, 'child')}label-success{else}label-default{/if}" href="{Router::search_url($params, '联动菜单字段英文名', NULL)}">不限</a></label>

        <!--调用联动菜单字段的联动菜单code值,pid为动态获取的地区id-->

        {list action=linkage code=联动菜单字段的联动菜单code值 pid=$params.联动菜单字段英文名}

        <label><a class="label {if $t.id==$params.联动菜单字段英文名}label-success{else}label-default{/if}" href="{Router::search_url($params, '联动菜单字段英文名', $t.id)}">{$t.name}</a></label>

        {/list}

    </div>

</div>


<!--【单选按钮】字段搜索-->

<div class="form-group row">

    <label class="col-md-2 control-label">单选字段</label>

    <div class="col-md-9">

        <label><a class="label {if !$params.单选字段英文名}label-success{else}label-default{/if}" href="{Router::search_url($params, '单选字段英文名', NULL)}">不限</a></label>

        <!--调用单选字段数据方法-->

        {php $field = dr_field_options($ci->module['field']['单选字段英文名']['id']);}

        {loop $field $value $name}

        <label><a class="label {if $value==$params.单选字段英文名}label-success{else}label-default{/if}" href="{Router::search_url($params, '单选字段英文名', $value)}">{$name}</a></label>

        {/loop}

    </div>

</div>


<!--【单选按钮】字段搜索-多条件-->

<div class="form-group row">

    <label class="col-md-2 control-label">单选字段-多条件</label>

    <div class="col-md-9">

        <label><a class="label {if !$params.单选字段英文名}label-success{else}label-default{/if}" href="{Router::search_url($params, '单选字段英文名', NULL)}">不限</a></label>

        <!--调用单选字段数据方法-->

        {php $field = dr_field_options($ci->module['field']['单选字段英文名']['id']);}

        {loop $field $value $name}

        <label><a class="label {if dr_is_double_search($params.单选字段英文名, $value)}label-success{else}label-default{/if}" href="{Router::search_url($params, '单选字段英文名', dr_get_double_search($params.单选字段英文名, $value))}">{$name}</a></label>

        {/loop}

    </div>

</div>

<div class="form-group row">

    <label class="col-md-2 control-label">复选字段-多条件</label>

    <div class="col-md-9">

        <label><a class="label {if !$params.复选字段英文名}label-success{else}label-default{/if}" href="{Router::search_url($params, '复选字段英文名', NULL)}">不限</a></label>

        <!--调用单选字段数据方法-->

        {php $field = dr_field_options($ci->module['field']['复选字段英文名']['id']);}

        {loop $field $value $name}

        <label><a class="label {if dr_is_double_search($params.复选字段英文名, $value)}label-success{else}label-default{/if}" href="{Router::search_url($params, '复选字段英文名', dr_get_double_search($params.复选字段英文名, $value))}">{$name}</a></label>

        {/loop}

    </div>

</div>



<!--【复选字段】搜索-->

<div class="form-group row">

    <label class="col-md-2 control-label">复选字段</label>

    <div class="col-md-9">

        <label><a class="label {if !$params.复选字段英文名}label-success{else}label-default{/if}" href="{Router::search_url($params, '复选字段英文名', NULL)}">不限</a></label>

        <!--调用字段数据方法-->

        {php $field = dr_field_options($ci->module['field']['复选字段英文名']['id']);}

        {loop $field $value $name}

        <label><a class="label {if $value==$params.复选字段英文名}label-success{else}label-default{/if}" href="{Router::search_url($params, '复选字段英文名', $value)}">{$name}</a></label>

        {/loop}

    </div>

</div>

<!--【下拉框字段】搜索-->

<div class="form-group row">

    <label class="col-md-2 control-label">下拉选择字段</label>

    <div class="col-md-9">

        <label><a class="label {if !$params.下拉字段英文名}label-success{else}label-default{/if}" href="{Router::search_url($params, '下拉字段英文名', NULL)}">不限</a></label>

        <!--调用单选字段数据方法-->

        {php $field = dr_field_options($ci->module['field']['下拉字段英文名']['id']);}

        {loop $field $value $name}

        <label><a class="label {if $value==$params.下拉字段英文名}label-success{else}label-default{/if}" href="{Router::search_url($params, '下拉字段英文名', $value)}">{$name}</a></label>

        {/loop}

    </div>

</div>


<div class="form-group row">

    <label class="col-md-2 control-label">单一购买价格</label>

    <div class="col-md-9">

        <!--自定义一个价格返回数组,这个都懂得,php最基础的数组用法-->

        {php $price=array('0,500'=>'500以内','500,1000'=>'500到1000','1000,2000'=>'1000到2000','2000,3000'=>'2000到3000','3000,0'=>'3000以上');}

        <label><a class="label {if !$params.dydgm}label-success{else}label-default{/if}" href="{Router::search_url($params, 'dydgm', NULL)}">不限</a></label>

        {loop $price $i $t}

        <label><a class="label {if $i==$params.dydgm}label-success{else}label-default{/if}" href="{Router::search_url($params, 'dydgm', $i)}">{$t}</a></label>

        {/loop}

    </div>

</div>


<div class="form-group row">

    <label class="col-md-2 control-label">组合购买价格自定义</label>

    <div class="col-md-9">

        {php $zhxgm = explode(',', $params.zhxgm);}

       <label><input type="text" class="form-control" value="{$zhxgm[0]}" id="zhxgm_min"></label>

       <label>到</label>

       <label><input type="text" class="form-control" value="{$zhxgm[1]}" id="zhxgm_max"></label>

       <label>这是自定义价格范围搜索的写法</label>

    </div>

</div>


<!--按关键字搜索-->

<div class="form-group row">

    <label class="col-md-2 control-label" style="padding-top:5px">内容搜索</label>

    <div class="col-md-6">

        <div class="input-group">

            <input type="text" class="form-control" onkeypress="if(event.keyCode==13) {dr_module_search();return false;}" name='keyword' value='{$keyword}' id='search_keyword'>

            <span class="input-group-btn">

                <button class="btn blue" onclick="dr_module_search()" type="button"> <i class="fa fa-search"></i> 搜索</button>

            </span>

        </div>

    </div>

</div>

<script>

    // 这段js是用来执行搜索的

    function dr_module_search(name) {

        var url="{Router::search_url($params, ['keyword', 'zhxgm'], ['mykeyword', 'myzhxgm'])}";

        var keyword = $("#search_keyword").val();

        var zhxgm_min = $("#zhxgm_min").val();

        var zhxgm_max = $("#zhxgm_max").val();

        zhxgm_max = zhxgm_max ? zhxgm_max : 0;

        zhxgm_min = zhxgm_min ? zhxgm_min : 0;

        if (zhxgm_max || zhxgm_min) {

            url = url.replace('myzhxgm', zhxgm_min+','+zhxgm_max);

        } else {

            url = url.replace('myzhxgm', '');

        }

        if (keyword) {

            url = url.replace('mykeyword', keyword);

        } else {

            url = url.replace('mykeyword', '');

        }

        location.href=url;

        return false;

    }

</script>

注意:$params是搜索参数数组,只能在搜索页面使用;以上字段的中文地方需要按需修改你后台自己创建的字段名称即可。

搜索函数:

{Router::search_url($params, '字段名', '字段值', '模块目录(search页面可以省略)')}

如果在首页或者非search页面使用这个函数必须加上第四个参数:模块目录

{Router::search_url($params, '字段名', '字段值', '模块目录')}

注意:复选框字段,在创建选项值的时候,务必填写储存值,且储存值不可为汉字,建议为数字或者字母代替。

1

本文地址:http://www.25923.com/xunrui/biaoqian/1018126.html(转载请保留)