官方微博: 腾讯  
首页 > ECSHOP教程 > ECSHOP模板教程 > ECSHOP商品列表页修改 > ECSHOP商品分类调用当前分类或下级商品分类函数

ECSHOP商品分类调用当前分类或下级商品分类函数

ECSHOP教程 / ecshop 教程网(www.ecshop119.com) 2012-08-29

很多时候我们在修改ECSHOP模版的时候可能需要在商品分类页或商品详细页里面只显示当前分类及其子分类,如果没有子分类就显示当前分类和上级分类,尤其在商品分类很多的情况下,可以添加以下函数

 

  • function get_categories_tree_xaphp($cat_id = 0)
  • {
  • if ($cat_id > 0)
  • {
  • $sql = ’SELECT parent_id FROM ’ . $GLOBALS['ecs']->table(‘category’) . “ WHERE cat_id = ’$cat_id’”;
  • $parent_id = $GLOBALS['db']->getOne($sql);
  • }
  • else
  • {
  • $parent_id = 0;
  • }
  • /*
  • 判断当前分类中全是是否是底级分类,
  • 如果是取出底级分类上级分类,
  • 如果不是取当前分类及其下的子分类
  • */
  • $sql = ’SELECT count(*) FROM ’ . $GLOBALS['ecs']->table(‘category’) . “ WHERE parent_id = ’$cat_id’ AND is_show = 1 ”;
  • if ($parent_id == 0||$GLOBALS['db']->getOne($sql))
  • {
  • /* 获取当前分类及其子分类 */
  • $sql = ’SELECT cat_id,cat_name ,parent_id,is_show ’ .
  • ‘FROM ’ . $GLOBALS['ecs']->table(‘category’) .
  • “WHERE parent_id = ’$cat_id’ AND is_show = 1 ORDER BY sort_order ASC, cat_id ASC”;
  • $res = $GLOBALS['db']->getAll($sql);
  • foreach ($res AS $row)
  • {
  • if ($row['is_show'])
  • {
  • $cat_arr[$row['cat_id']]['id']   = $row['cat_id'];
  • $cat_arr[$row['cat_id']]['name'] = $row['cat_name'];
  • $cat_arr[$row['cat_id']]['url']  = build_uri(‘category’, array(‘cid’ => $row['cat_id']), $row['cat_name']);
  • }
  • }
  • }
  • else
  • {
  • /* 获取当前分类及其子分类 */
  • $sql = ’SELECT cat_id,cat_name ,parent_id,is_show ’ .
  • ‘FROM ’ . $GLOBALS['ecs']->table(‘category’) .
  • “WHERE parent_id = ’$parent_id’ AND is_show = 1 ORDER BY sort_order ASC, cat_id ASC”;
  • $res = $GLOBALS['db']->getAll($sql);
  • foreach ($res AS $row)
  • {
  • if ($row['is_show'])
  • {
  • $cat_arr[$row['cat_id']]['id']   = $row['cat_id'];
  • $cat_arr[$row['cat_id']]['name'] = $row['cat_name'];
  • $cat_arr[$row['cat_id']]['url']  = build_uri(‘category’, array(‘cid’ => $row['cat_id']), $row['cat_name']);
  • }
  • }
  • }
  • if(isset($cat_arr))
  • {
  • return $cat_arr;
  • }
  • }

转载请注明:ECshop119模板屋-ECshop教程网(全国最专业的ECSHOP插件制作商-专业ECSHOP二次开发)

帮助目录

在线反馈

可以将问题或建议反馈给我们。

提交在线反馈

与网友交流ECSHOP开发修改。

加入QQ群交流