ecshop怎么让分类页显示当前分类的所有子分类?

新买了一个模板,分类页不能显示当前顶级分类的所有子分类。请问如何设置呢?请详细一点,我很菜,没多少分了。都给了,谢谢。... 新买了一个模板 ,分类页不能显示当前顶级分类的所有子分类。请问如何设置呢?请详细一点,我很菜,没多少分了。都给了,谢谢。 展开
 我来答
硬币小耗
推荐于2018-03-29 · 知道合伙人教育行家
硬币小耗
知道合伙人教育行家
采纳数:4962 获赞数:133691
英语成绩优异,大一学年四六级就全部通过。一直兼职家教,经验丰富,暑假还在新东方担任过助教

向TA提问 私信TA
展开全部
  让分类页显示当前分类的所有子分类方法如下:
  修改/include/lib_goods.php,在第24行加入以下代码:
  /**
  * 获得指定分类下的子分类
  *
  * @access public
  * @param integer $cat_id 分类编号

  * @return array
  *www.68ecshop.com
  */
  function get_children_tree($cat_id)
  {
  if ($cat_id >0 )
  {
  $sql = 'SELECT count(*) FROM ' . $GLOBALS['ecs']->table('category') . " WHERE parent_id = '$cat_id'";
  //$cot = $GLOBALS['db']->getOne($sql);
  if ($GLOBALS['db']->getOne($sql))
  {
  // 获取当前分类名及其子类
  $sql = 'SELECT a.cat_id, a.cat_name, a.sort_order AS parent_order, a.cat_id, ' .
  'b.cat_id AS child_id, b.cat_name AS child_name, b.sort_order AS child_order ' .
  'FROM ' . $GLOBALS['ecs']->table('category') . ' AS a ' .
  'LEFT JOIN ' . $GLOBALS['ecs']->table('category') . ' AS b ON b.parent_id = a.cat_id ' .
  "WHERE a.cat_id = '$cat_id' ORDER BY parent_order ASC, a.cat_id ASC, child_order ASC";
  }
  else
  {
  $sql = 'SELECT parent_id FROM ' . $GLOBALS['ecs']->table('category') . " WHERE cat_id = '$cat_id'";
  $parent_id = $GLOBALS['db']->getOne($sql);
  if ($parent_id > 0)
  {
  //获取当前分类、兄弟及其父类
  $sql = 'SELECT a.cat_id, a.cat_name, b.cat_id AS child_id, b.cat_name AS child_name, b.sort_order ' .
  'FROM ' . $GLOBALS['ecs']->table('category') . ' AS a ' .
  'LEFT JOIN ' . $GLOBALS['ecs']->table('category') . ' AS b ON b.parent_id = a.cat_id ' .
  "WHERE b.parent_id = '$parent_id' ORDER BY sort_order ASC";
  }
  else
  {
  //获取当前分类
  $sql = 'SELECT a.cat_id, a.cat_name FROM '
  . $GLOBALS['ecs']->table('category') . ' AS a ' .
  "WHERE a.cat_id = '$cat_id'";
  }
  }

  , array('cid' => $row['cat_id']), $row['cat_name']);
  return $cat_arr;
  }
  }
  这其实就是一个get_children_tree函数,更具$cat_id来得到当前分类所有的分类
ecshop模板中心
2014-02-18 · TA获得超过1377个赞
知道大有可为答主
回答量:2046
采纳率:0%
帮助的人:1636万
展开全部

这个限定个数可能是给做判断了,类似于这样的,如图

把if判断去掉,有的就需要改css样式了!

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
奇趣阁成人用品
推荐于2016-07-25 · TA获得超过139个赞
知道答主
回答量:123
采纳率:50%
帮助的人:31.6万
展开全部
<!--{foreach from=$categories item=cat}-->
<a href="{$cat.url}"><!--{if $category eq $cat.id}-->{$cat.name|escape:html}<!--{else}-->{$cat.name|escape:html}<!--{/if}--></a>
<!--{foreach from=$cat.children item=child}-->
<a href="{$child.url}">{$child.name|escape:html}</a>
<!--{/foreach}-->
<!--{/foreach}-->
顶级分类显示所有下级分类
子分类显示所有同级分类
更多追问追答
追问
我加上这个代码,显示的是所有的顶级分类,没有显示下级分类和子分类。
追答
错了,应该是这样的

{$cat.name|escape:html}

{$child.name|escape:html}

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式