香港独立IP空间
香港php空间
美国php空间
域名注册

“小编我的网上商城商品的排序怎么全是乱的呢?”小编一看,原来是最土团购的程序,小编就立马恢复说最土团购想要按照商品价格排序是要收费的。这位朋友不干了,就连这么小的事情都要收费,这是要闹哪样啊!没辙,助人为乐的无忧小编又开始研究了,一是为了帮助朋友们省钱,二也是为了体验下修改的乐趣。确实,最土团购这个程序有点过分了,就连排序都要收费,简单商品按照价格排序不仅是为了方便查找,更是为了让用户有更好的体验乐趣,这时的小编又是红领巾附体,想要通过修改程序代码解决这个问题,小编想到的方法是通过前台带推断出后台代码的实现方法。要想实现按价格排序需要前台有链接,后台然后实现相应的功能即可。

前台代码:\include\template\team_multi.html
这个模板文件,因为我们是开启了首页显示多项团购显示,所以用点的这个team_multi.html这个模板

代码如下:

 

<div class=”filter-by-group-title”>按价格:</div>

<div class=”filter-by-group-id”>

<ul class=”cates”>

<li

<!–{if $selector_p == ”}–>

class=”current”

<!–{/if}–>

><a href=”?gid={$_GET[‘gid’]}&areaid={$_GET[‘areaid’]}”>全部</a>

</li>

<li

<!–{if $selector_p == ‘p1′}–>

class=”current”

<!–{/if}–>

><a href=”?gid={$_GET[‘gid’]}&areaid={$_GET[‘areaid’]}&p=p1″>10元以下</a>

</li>

<li

<!–{if $selector_p == ‘p2′}–>

class=”current”

<!–{/if}–>

><a href=”?gid={$_GET[‘gid’]}&areaid={$_GET[‘areaid’]}&p=p2″>10-50元</a>

</li>

<li

<!–{if $selector_p == ‘p3′}–>

class=”current”

<!–{/if}–>

><a href=”?gid={$_GET[‘gid’]}&areaid={$_GET[‘areaid’]}&p=p3″>50-100元</a>

</li>

<li

<!–{if $selector_p == ‘p4′}–>

class=”current”

<!–{/if}–>

><a href=”?gid={$_GET[‘gid’]}&areaid={$_GET[‘areaid’]}&p=p4″>100-200元</a>

</li>

<li

<!–{if $selector_p == ‘p5′}–>

class=”current”

<!–{/if}–>

><a href=”?gid={$_GET[‘gid’]}&areaid={$_GET[‘areaid’]}&p=p5″>200元以上</a>

</li>

</ul>

</div>

</div>

 

后台代码:\include\function\common.php
index_get_team 函数 修改后的代码

代码如下:

function index_get_team($city_id,$group_id=0,$p=””) {
global $INI;
$multi = option_yes(‘indexmulti’);
$city_id = abs(intval($city_id));
/* 是否首页多团,不是则返回当前城市 */
if (!$multi) return current_team($city_id);
$now = time();
$size = abs(intval($INI[‘system’][‘indexteam’]));
/* 侧栏团购数小于1,则返回当前城市数据 */
if ($size<=1) return current_team($city_id);
switch ($p)
{
case “p1″:
$pp1=”team_price < ’10′”;
$pp2=””;
break;
case “p2″:
$pp1=”team_price > ’10′”;
$pp2=”team_price < ’50′”;
break;
case “p3″:
$pp1=”team_price > ’50′”;
$pp2=”team_price < ‘100’”;
break;
case “p4″:
$pp1=”team_price > ‘100’”;
$pp2=”team_price < ‘200’”;
break;
case “p5″:
$pp1=”team_price > ‘200’”;
$pp2=””;
break;
default:
$pp1=””;
$pp2=””;
}
$oc = array(
‘team_type’ => ‘normal’,
“begin_time < ‘{$now}'”,
“end_time > ‘{$now}'”,
);
if(!empty($pp1)){
array_push($oc,$pp1);
}
if(!empty($pp2)){
array_push($oc,$pp2);
}
if($group_id) $oc[‘group_id’]=$group_id;
/* 数据库匹配多个城市订单,前者按照多城市搜索,后者兼容旧字段city_id搜索 */
$oc[] = “(city_ids like ‘%@{$city_id}@%’ or city_ids like ‘%@0@%’) or (city_ids = ” and city_id in(0,{$city_id}))”;
$teams = DB::LimitQuery(‘team’, array(
‘condition’ => $oc,
‘order’ => ‘ORDER BY `sort_order` DESC, `id` DESC’,
‘size’ => $size,
));
if(count($teams) == 1) return array_pop($teams);
return $teams;
}

需要在index.php页面中增加一个

$selector_p=$p=addslashes($_GET[‘p’]);方面当前价格的高亮。

以上方法可行,大家快去试试吧,帮大家省钱了,邀请小编吃饭的要排队哦!

希望可以帮助各位站长朋友!

本文地址:http://www.51php.com/zueitu/15129.html

喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

阅读本文的人还阅读:


搜索技术文档