• <ul id="cgeq2"></ul>
  • 歡迎您光臨深圳塔燈網(wǎng)絡(luò)科技有限公司!
    電話圖標(biāo) 余先生:13699882642

    織夢做商城,按銷量,價(jià)格等自定義模型字段排序列表解決方案

    發(fā)表日期:2018-04 文章編輯:小燈 瀏覽次數(shù):4173

    做織夢(5.7)商城,會用到按銷量,價(jià)格等自定義模型字段排序列表,這時(shí)就需使用freelist標(biāo)簽。但freelist標(biāo)簽
    不支持按照自定義字段排序,實(shí)現(xiàn)此功能的解決辦法如下:


    以添加按商品價(jià)格(自定義字段名:price)排序?yàn)槔?/span>


    1、打開后臺模板dede/templets/freelist_add.htm
    找到大概243行<select name="orderby" id="orderby" style="width:120">,為其添加一個(gè)選項(xiàng)到最后
    結(jié)果如下:
    <select name="orderby" id="orderby" style="width:120">
    <option value="sortrank">置頂權(quán)限值</option>
    <option value="pubdate" selected>發(fā)布時(shí)間</option>
    <option value="senddate">錄入時(shí)間</option>
    <option value="click">點(diǎn)擊量</option>
    <option value="id">文檔ID</option>
    <option value="lastpost">最后評論時(shí)間</option>
    <option value="postnum">評論總數(shù)</option>
    <option value="price">商品價(jià)格</option>
    </select>
    保存關(guān)閉


    2、打開后臺模板dede/templets/freelist_edit.htm
    找到大概219行 $sorta = "sortrank,置頂權(quán)限值;pubdate,發(fā)布時(shí)間;... ,為其添加一個(gè)選項(xiàng)到最后
    結(jié)果如下:
    $sorta = "sortrank,置頂權(quán)限值;pubdate,發(fā)布時(shí)間;senddate,錄入時(shí)間;click,點(diǎn)擊量;id,文檔ID,lastpost,最后評論時(shí)間;postnum,評論總數(shù);rand,隨機(jī)獲取;price,商品價(jià)格";

    然后在下方<select name="orderby" id="orderby" style="width:120">最后同樣添加一個(gè)選項(xiàng)

    <select name="orderby" id="orderby" style="width:120">
    <?php
    echo "<option value=\"$orderby\" selected>{$sortarrs[$orderby]}</option>\r\n";
    ?>
    <option value="sortrank">置頂權(quán)限值</option>
    <option value="pubdate">發(fā)布時(shí)間</option>
    <option value="senddate">錄入時(shí)間</option>
    <option value="click">點(diǎn)擊量</option>
    <option value="id">文檔ID</option>
    <option value="lastpost">最后評論時(shí)間</option>
    <option value="postnum">評論總數(shù)</option>
    <option value="price">商品價(jià)格</option>
    </select>
    保存關(guān)閉


    3、添加自由列表時(shí),就可以選擇“商品排序”這個(gè)選項(xiàng)了。


    4、打開include/arc.freelist.class.php
    找到
    //排序方式
    $ordersql = "";
    if($orderby=="senddate")
    這段代碼,在最后一個(gè)else前面添加一段代碼,結(jié)果如下:
    //排序方式
    $ordersql = "";
    if($orderby=="senddate")
    {
    $ordersql=" ORDER BY arc.senddate $orderWay";
    }
    else if($orderby=="pubdate")
    {
    $ordersql=" ORDER BY arc.pubdate $orderWay";
    }
    else if($orderby=="id")
    {
    $ordersql=" ORDER BY arc.id $orderWay";
    }
    else if($orderby=="hot"||$orderby=="click")
    {
    $ordersql = " ORDER BY arc.click $orderWay";
    }
    else if($orderby=="lastpost")
    {
    $ordersql = " ORDER BY arc.lastpost $orderWay";
    }
    else if($orderby=="scores")
    {
    $ordersql = " ORDER BY arc.scores $orderWay";
    }
    else if($orderby=="rand")
    {
    $ordersql = " ORDER BY rand()";
    }
    else if($orderby=="price") //自定義商品頻道按價(jià)格排序
    {
    $ordersql = " ORDER BY ".$addtable.".price";
    }
    else
    {
    $ordersql=" ORDER BY arc.sortrank $orderWay";
    }

    最后最重要的一點(diǎn):把下面一段代碼位置提前到排序這段代碼的前面來,否則無法取到$addtable的值
    查詢語句會出錯(cuò)。調(diào)換以后的結(jié)果為:


    //獲得附加表的相關(guān)信息
    $addField = "";
    $addJoin = "";
    if(is_object($this->ChannelUnit))
    {
    $addtable = $this->ChannelUnit->ChannelInfos['addtable'];
    if($addtable!="")
    {
    $addJoin = " LEFT JOIN $addtable ON arc.id = ".$addtable.".aid ";
    $addField = "";
    $fields = explode(",",$this->ChannelUnit->ChannelInfos['listfields']);
    foreach($fields as $k=>$v)
    {
    $nfields[$v] = $k;
    }
    foreach($this->ChannelUnit->ChannelFields as $k=>$arr)
    {
    if(isset($nfields[$k]))
    {
    if(!empty($arr['rename']))
    {
    $addField .= ",".$addtable.".".$k." as ".$arr['rename'];
    }
    else
    {
    $addField .= ",".$addtable.".".$k;
    }
    }
    }
    }
    }


    //排序方式
    $ordersql = "";
    if($orderby=="senddate")
    {
    $ordersql=" ORDER BY arc.senddate $orderWay";
    }
    else if($orderby=="pubdate")
    {
    $ordersql=" ORDER BY arc.pubdate $orderWay";
    }
    else if($orderby=="id")
    {
    $ordersql=" ORDER BY arc.id $orderWay";
    }
    else if($orderby=="hot"||$orderby=="click")
    {
    $ordersql = " ORDER BY arc.click $orderWay";
    }
    else if($orderby=="lastpost")
    {
    $ordersql = " ORDER BY arc.lastpost $orderWay";
    }
    else if($orderby=="scores")
    {
    $ordersql = " ORDER BY arc.scores $orderWay";
    }
    else if($orderby=="rand")
    {
    $ordersql = " ORDER BY rand()";
    }
    else if($orderby=="price") //自定義商品頻道按價(jià)格排序
    {
    $ordersql = " ORDER BY ".$addtable.".price";
    }
    else
    {
    $ordersql=" ORDER BY arc.sortrank $orderWay";
    }

    保存關(guān)閉。

    至此,大功告成,如需添加其他字段,按照此方法處理即可。

    此方法較適用于分類不太多的情況,如果分類太多,那生成的列表就太多,需要考慮別的解決方案了。


    本頁內(nèi)容由塔燈網(wǎng)絡(luò)科技有限公司通過網(wǎng)絡(luò)收集編輯所得,所有資料僅供用戶參考了本站不擁有所有權(quán),如您認(rèn)為本網(wǎng)頁中由涉嫌抄襲的內(nèi)容,請及時(shí)與我們聯(lián)系,并提供相關(guān)證據(jù),工作人員會在5工作日內(nèi)聯(lián)系您,一經(jīng)查實(shí),本站立刻刪除侵權(quán)內(nèi)容。本文鏈接:http://www.juherenli.com/11261.html
    相關(guān)cms文章
     八年  行業(yè)經(jīng)驗(yàn)

    多一份參考,總有益處

    聯(lián)系深圳網(wǎng)站公司塔燈網(wǎng)絡(luò),免費(fèi)獲得網(wǎng)站建設(shè)方案及報(bào)價(jià)

    咨詢相關(guān)問題或預(yù)約面談,可以通過以下方式與我們聯(lián)系

    業(yè)務(wù)熱線:余經(jīng)理:13699882642

    Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.    

    亚洲Av永久无码精品三区在线 | 国产高清精品入口91| www国产亚洲精品久久久日本| 91亚洲国产成人久久精品 | 久久精品九九亚洲精品天堂| 国产色无码精品视频国产| 亚洲精品二三区伊人久久| 亚洲AV永久无码精品| 久久国产成人精品国产成人亚洲 | 国产欧美一区二区精品仙草咪| 亚洲国语精品自产拍在线观看 | 97久久超碰国产精品2021| 精品一区二区在线观看| 精品人妻少妇嫩草AV无码专区| 国产成人精品午夜视频'| 国产精品中文久久久久久久| 久久久精品2019免费观看 | 精品无码久久久久国产动漫3d| 亚洲国产精品无码久久一区二区| 国产精品无打码在线播放| 国产揄拍国内精品对白| 国产SUV精品一区二区88| 2020国产欧洲精品视频| 久久精品国产99国产精品亚洲| 无码精品一区二区三区在线| 久久精品国产91久久麻豆自制| 国内精品伊人久久久久影院对白| d动漫精品专区久久| 国产精品免费一级在线观看| 最新国产精品视频| 东京热一精品无码AV| 亚洲精品无码专区在线播放| 国产精品视频一区二区三区| 精品女同一区二区三区免费站 | 国产精品午夜久久| 国产高清在线精品一区小说| 午夜精品久久久内射近拍高清 | 久久久国产精品福利免费 | 精品成人乱色一区二区| 精品国偷自产在线| 2020精品极品国产色在线观看|