您现在的位置是:首页 > 教程 > ecshop商城教程ecshop商城教程
ecshop品牌列表页实现分页的方法
白易2024-01-16 20:23:16ecshop商城教程已有人查阅
导读ECSHOP品牌列表页实现分页修改教程ECSHOP品牌列表页brand.php默认是没有分页的,如果品牌太多了,就不方便了。所以民能加上一个分页功能。 步
ECSHOP品牌列表页实现分页修改教程
ECSHOP品牌列表页brand.php默认是没有分页的,如果品牌太多了,就不方便了。所以民能加上一个分页功能。
步骤一:
打开根目录 brand.php 文件
查找:
if (empty($brand_id)){ /* 缓存编号 */ $cache_id = sprintf('%X', crc32($_CFG['lang'])); if (!$smarty->is_cached('brand_list.dwt', $cache_id)) { assign_template(); $position = assign_ur_here('', $_LANG['all_brand']); $smarty->assign('page_title', $position['title']); // 页面标题 $smarty->assign('ur_here', $position['ur_here']); // 当前位置 $smarty->assign('categories', get_categories_tree()); // 分类树 $smarty->assign('helps', get_shop_help()); // 网店帮助 $smarty->assign('top_goods', get_top10()); // 销售排行 $smarty->assign('brand_list', get_brands()); } $smarty->display('brand_list.dwt', $cache_id); exit();}
修改为:
if (empty($brand_id)){assign_template(); $position = assign_ur_here('', $_LANG['all_brand']); $smarty->assign('page_title', $position['title']); // 页面标题 $smarty->assign('ur_here', $position['ur_here']); // 当前位置 $smarty->assign('categories', get_categories_tree()); // 分类树 $smarty->assign('helps', get_shop_help()); // 网店帮助 $smarty->assign('top_goods', get_top10()); // 销售排行 $sql = "SELECT count(*) as brand_count from ( select b.brand_id ". "FROM " . $GLOBALS['ecs']->table('brand') . "AS b, ". $GLOBALS['ecs']->table('goods') . " AS g ". "WHERE g.brand_id = b.brand_id AND is_show = 1 " . " AND g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 ". "GROUP BY b.brand_id ) AS gb"; $brand_count=$GLOBALS['db']->getOne($sql); //品牌(含有商品的)数量 $page = !empty($_REQUEST['page']) && intval($_REQUEST['page']) > 0 ? intval($_REQUEST['page']) : 1; $size = 30; $max_page = ($brand_count> 0) ? ceil($brand_count / $size) : 1; if ($page > $max_page) {$page = $max_page;} $start=($page - 1) * $size; $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 ". "FROM " . $GLOBALS['ecs']->table('brand') . "AS b, ". $GLOBALS['ecs']->table('goods') . " AS g ". "WHERE g.brand_id = b.brand_id AND is_show = 1 " . " AND g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 ". "GROUP BY b.brand_id HAVING goods_num > 0 ORDER BY tag DESC, b.sort_order ASC limit $start,$size"; $row = $GLOBALS['db']->getAll($sql); foreach ($row AS $key => $val) { $row[$key]['url'] = build_uri('brand', array('cid' => $cat, 'bid' => $val['brand_id']), $val['brand_name']); $row[$key]['brand_desc'] = htmlspecialchars($val['brand_desc'],ENT_QUOTES); } $pager['search'] = array( ); $pager = get_pager('brand.php', $pager['search'], $brand_count, $page, $size); $pager['display'] = $display; $smarty->assign('pager', $pager); $smarty->assign('brand_list', $row); $smarty->display('brand_list.dwt'); exit();}
其中, 0行的
$size = 30;
表示每页的数量
第二步:
打开模板文件 brand_list.dwt
在需要显示分页的地方加入以下代码:
大功告成
ECSHOP品牌列表页brand.php默认是没有分页的,如果品牌太多了,就不方便了。所以民能加上一个分页功能。
步骤一:
打开根目录 brand.php 文件
查找:
if (empty($brand_id)){ /* 缓存编号 */ $cache_id = sprintf('%X', crc32($_CFG['lang'])); if (!$smarty->is_cached('brand_list.dwt', $cache_id)) { assign_template(); $position = assign_ur_here('', $_LANG['all_brand']); $smarty->assign('page_title', $position['title']); // 页面标题 $smarty->assign('ur_here', $position['ur_here']); // 当前位置 $smarty->assign('categories', get_categories_tree()); // 分类树 $smarty->assign('helps', get_shop_help()); // 网店帮助 $smarty->assign('top_goods', get_top10()); // 销售排行 $smarty->assign('brand_list', get_brands()); } $smarty->display('brand_list.dwt', $cache_id); exit();}
修改为:
if (empty($brand_id)){assign_template(); $position = assign_ur_here('', $_LANG['all_brand']); $smarty->assign('page_title', $position['title']); // 页面标题 $smarty->assign('ur_here', $position['ur_here']); // 当前位置 $smarty->assign('categories', get_categories_tree()); // 分类树 $smarty->assign('helps', get_shop_help()); // 网店帮助 $smarty->assign('top_goods', get_top10()); // 销售排行 $sql = "SELECT count(*) as brand_count from ( select b.brand_id ". "FROM " . $GLOBALS['ecs']->table('brand') . "AS b, ". $GLOBALS['ecs']->table('goods') . " AS g ". "WHERE g.brand_id = b.brand_id AND is_show = 1 " . " AND g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 ". "GROUP BY b.brand_id ) AS gb"; $brand_count=$GLOBALS['db']->getOne($sql); //品牌(含有商品的)数量 $page = !empty($_REQUEST['page']) && intval($_REQUEST['page']) > 0 ? intval($_REQUEST['page']) : 1; $size = 30; $max_page = ($brand_count> 0) ? ceil($brand_count / $size) : 1; if ($page > $max_page) {$page = $max_page;} $start=($page - 1) * $size; $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 ". "FROM " . $GLOBALS['ecs']->table('brand') . "AS b, ". $GLOBALS['ecs']->table('goods') . " AS g ". "WHERE g.brand_id = b.brand_id AND is_show = 1 " . " AND g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 ". "GROUP BY b.brand_id HAVING goods_num > 0 ORDER BY tag DESC, b.sort_order ASC limit $start,$size"; $row = $GLOBALS['db']->getAll($sql); foreach ($row AS $key => $val) { $row[$key]['url'] = build_uri('brand', array('cid' => $cat, 'bid' => $val['brand_id']), $val['brand_name']); $row[$key]['brand_desc'] = htmlspecialchars($val['brand_desc'],ENT_QUOTES); } $pager['search'] = array( ); $pager = get_pager('brand.php', $pager['search'], $brand_count, $page, $size); $pager['display'] = $display; $smarty->assign('pager', $pager); $smarty->assign('brand_list', $row); $smarty->display('brand_list.dwt'); exit();}
其中, 0行的
$size = 30;
表示每页的数量
第二步:
打开模板文件 brand_list.dwt
在需要显示分页的地方加入以下代码:
大功告成
本文标签:
很赞哦! ()
相关文章
随机图文
-
ecshop购物流程电子邮件必填和电话手机怎么去掉
1、include/lib_order.php;2、js/shopping_flow.js 函数checkC**ignee(frm)第582行左右去掉或注释掉 -
如何去掉删除ecshop后台升级补丁提示及删除云激活提示
怎么删除ECSHOP后台补丁升级提示及云升级提示?答:去掉admin/templates/start.htm中 -
ecshop会员中心您还没有通过邮件认证的删除方法
下面修改方法是以官方默认模板为例的,如果您使用的是其他模板,请搜索 {$lang.not_validated}或{$lang.resend_hash_mail}也能找到对应的代码。 -
ecshop商品浏览历史模板样式怎么修改
ECSHOP的浏览历史样式不是很好,想要修改,发现 history.lbi 中不能修改。需要修改的文件:includes\lib_insert.php,找
留言与评论 (共有 条评论) |