在ECSHOP全部品牌页实现分页换页功能-站长杂谈下载

在ECSHOP全部品牌页实现分页换页功能

开通本站Svip会员,全站资源免费下
最近看到有朋友在论坛问到过此类问题,所以抽空写了下文。' ^2 u: n6 N' u. c) U1 D
“在全部品牌页实现分页换页功能”,对商品品牌较多的朋友也许会有帮助。
1、打开brand.php5 o! h* v" O, ?$ P& k* o
找到
) Z2 g. e" q( R* \if (empty($brand_id))
3 l2 |& K' u# t1 a# u* a8 I{
% S0 d& ]) n% K+ R, Y. B再找到
; C0 W1 r+ \2 ?4 ?exit();  a4 r1 @* g4 ~9 y
}
将这两者之间的代码全部替换为下面代码
' s' @" a  {3 \+ Y0 e
9 F6 W8 R% h5 D/ {
assign_template();
' v  z' J0 n3 F5 u        $position = assign_ur_here('', $_LANG['all_brand']);0 N4 W. w* M* K
        $smarty->assign('page_title',      $position['title']);    // 页面标题, G0 U! @- ~1 Z) |% _9 D
        $smarty->assign('ur_here',         $position['ur_here']);  // 当前位置
! S0 ~' J- S8 z5 o7 R3 S, J' |! K        $smarty->assign('categories',      get_categories_tree()); // 分类树
/ y# Q$ k) O) |1 i9 W        $smarty->assign('helps',           get_shop_help());       // 网店帮助
, w$ E! z1 |$ e. g. `" C        $smarty->assign('top_goods',       get_top10());           // 销售排行1 x7 k5 S9 M2 V2 V
  
% N6 }; r; t& ^- ?, {$ e  $sql = "SELECT count(*) as brand_count from ( select b.brand_id ".! A* t, o" G& r  d% b9 f# w
            "FROM " . $GLOBALS['ecs']->table('brand') . "AS b, ".4 c  @2 y9 R* z7 O2 [
            $GLOBALS['ecs']->table('goods') . " AS g ".
. Z% m: ^' W+ N2 H, k0 ]            "WHERE g.brand_id = b.brand_id AND is_show = 1 " .3 w4 p, ~1 l3 {* K7 S2 y/ Z2 x8 z6 p
            " AND g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 "./ j* N2 Z8 n+ Y6 d
            "GROUP BY b.brand_id ) AS gb";. Q, s2 I' I; T. t, ~
  $brand_count=$GLOBALS['db']->getOne($sql);  //品牌(含有商品的)数量 # n7 G. ^# q- h  L' {
   $page       = !empty($_REQUEST['page'])  && intval($_REQUEST['page'])  > 0 ? intval($_REQUEST['page'])  : 1;
- R7 B8 x- W! l% j) i5 k   $size       = 3;
$ }( \4 k: Q/ C4 a5 x4 U   $max_page = ($brand_count> 0) ? ceil($brand_count / $size) : 1;
+ F' C# w1 V' D7 b, i9 T   if ($page > $max_page)  {$page = $max_page;}
3 A, e2 n) A8 ^& \& h0 g5 e   $start=($page - 1) * $size;   + T1 H4 B/ V7 P% f  `/ I; c' e
  $sql = "SELECT b.brand_id, b.brand_name, b.brand_logo, b.brand_desc, COUNT(*) AS goods_num, IF(b.brand_logo > '', '1', '0') AS TAG ".: H2 \3 S; _# U. p
            "FROM " . $GLOBALS['ecs']->table('brand') . "AS b, ".
' y( F7 A8 {8 E; T8 @+ _) U2 @1 w                $GLOBALS['ecs']->table('goods') . " AS g ".  a  j% G% {, A- ~- u7 C
            "WHERE g.brand_id = b.brand_id AND is_show = 1 " .
) T* y; U% Z) u# |            " AND g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 ".$ ~- t0 p& y( n
            "GROUP BY b.brand_id HAVING goods_num > 0 ORDER BY tag DESC, b.sort_order ASC limit $start,$size";
1 r0 X3 L% m: [* O% N  
- \1 |9 y+ V/ F. i  $row = $GLOBALS['db']->getAll($sql);
: Y6 }& o  V% K, t. x1 P8 i  foreach ($row AS $key => $val)& x! m$ j( N% Y. d3 z
  {
1 M. D0 C# ]  t   $row[$key]['url'] = build_uri('brand', array('cid' => $cat, 'bid' => $val['brand_id']), $val['brand_name']);
- d) S5 ?& S( T+ M+ W* W6 L   $row[$key]['brand_desc'] = htmlspecialchars($val['brand_desc'],ENT_QUOTES);
4 a1 d# X5 i! r6 |  }. f/ j& I; d( a- p0 d& M/ j& K
  $pager['search'] = array( );
8 d& S/ @6 b  K* G' ?( R  $pager = get_pager('brand.php', $pager['search'], $brand_count, $page, $size);
$ n  j9 P: ~" j+ U  $pager['display'] = $display;
, K; s( H  `2 x0 L) @5 ?( b: {( B/ c  $smarty->assign('pager', $pager);+ S4 |$ d& P5 b' A6 a& N4 D+ ]; v/ E  b
        $smarty->assign('brand_list', $row);  
9 Y. K$ g- r7 M+ F4 {% |    $smarty->display('brand_list.dwt');

; x' {- d( K& q  c6 H" ]4 L: m4 H; z( K1 l/ X6 _- q
2、打开 模板文件 brand_list.dwt5 M8 u% M8 t! x9 m' {% j7 {
    在你想要显示换页信息的地方加入下面代码% R/ `3 v2 e4 m  e8 x. u
    <!-- #BeginLibraryItem "/library/pages.lbi" --><!-- #EndLibraryItem -->
( o) z8 s; q5 ~6 O, Z7 O  e   如果你使用的是官方默认模板,那么在
6 A/ d4 C! ~( S    <div class="dashed"></div>
* f) p, w0 s: s1 ~" }( X  f7 O' W    这行代码下面加5 Z' m( M4 n3 m
    <!-- #BeginLibraryItem "/library/pages.lbi" --><!-- #EndLibraryItem -->" C$ l6 w6 A; U9 ^( @4 D
    比较合适。
# u5 h3 Y9 L: m3 F8 y0 [0 s! m( h

全部评论 0

您需要登录后才可以回帖 立即登录
登录
0
0
0
返回顶部