魔扣论坛

魔扣源码论坛业务
查看: 1184|回复: 5

[Ecshop教程] ecshop增加商品分类批量添加功能

[复制链接]
  • TA的每日心情
    无聊
    19 小时前
  • 签到天数: 2956 天

    [LV.Master]开坛老将

    7万

    主题

    227

    回帖

    27万

    积分

    管理员

    Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

    魔扣币
    745735
    贡献
    157913
    威望
    32799

    最佳新人活跃会员热心会员推广达人宣传达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2019-5-31 21:39:31 | 显示全部楼层 |阅读模式
    魔扣币兑换比例:【 50以下 : ¥1 = 10 魔扣币 】丨【 50 - 100 :¥1 = 20 魔扣币】丨【 100以上:¥1 = 30 魔扣币 】

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
          ECShop商品分类上传,如果分类较多的话,ECShop默认的上传方式让我们觉得很繁琐。以下这个功能非常不错,简化了我们的上传方式,一次性导入更多的分类,分类之间使用半角逗号分隔。本功能基于2.7.3,其他版本的用户请参考代码研究。
      效果演示:如下
      首先,我们导入一级分类,也就是顶级分类:


      然后对二级分类进行导入:


      其他的分类类似方式导入。
      注意:多个分类之间的逗号是英文符号。本功能基于2.7.3,其他版本的用户请参考代码研究。  
      修改方法:
      第一步:编辑/admin/templates/category_info.htm  
      查找:

      {$lang.cat_name}:  *

      修改为:
      {$lang.cat_name}:                                           {$cat_info.cat_name|escape:html}   *                      {$lang.notice_cat_name}

      第二步:编辑/admin/category.php  
      查找:
    /*------------------------------------------------------ */
    //-- 商品分类添加时的处理
    /*------------------------------------------------------ */
    if ($_REQUEST['act'] == 'insert')
    {
      /* 权限检查 */
      admin_priv('cat_manage');
      /* 初始化变量 */
      $cat['cat_id']       = !empty($_POST['cat_id'])       ? intval($_POST['cat_id'])     : 0;
      $cat['parent_id']    = !empty($_POST['parent_id'])    ? intval($_POST['parent_id'])  : 0;
      $cat['sort_order']   = !empty($_POST['sort_order'])   ? intval($_POST['sort_order']) : 0;
      $cat['keywords']     = !empty($_POST['keywords'])     ? trim($_POST['keywords'])     : '';
      $cat['cat_desc']     = !empty($_POST['cat_desc'])     ? $_POST['cat_desc']           : '';
      $cat['measure_unit'] = !empty($_POST['measure_unit']) ? trim($_POST['measure_unit']) : '';
      $cat['cat_name']     = !empty($_POST['cat_name'])     ? trim($_POST['cat_name'])     : '';
      $cat['show_in_nav']  = !empty($_POST['show_in_nav'])  ? intval($_POST['show_in_nav']): 0;
      $cat['style']        = !empty($_POST['style'])        ? trim($_POST['style'])        : '';
      $cat['is_show']      = !empty($_POST['is_show'])      ? intval($_POST['is_show'])    : 0;
      $cat['grade']        = !empty($_POST['grade'])        ? intval($_POST['grade'])      : 0;
      $cat['filter_attr']  = !empty($_POST['filter_attr'])  ? implode(',', array_unique(array_diff($_POST['filter_attr'],array(0)))) : 0;
      $cat['cat_recommend']  = !empty($_POST['cat_recommend'])  ? $_POST['cat_recommend'] : array();
      if (cat_exists($cat['cat_name'], $cat['parent_id']))
      {
      /* 同级别下不能有重复的分类名称 */
      $link[] = array('text' => $_LANG['go_back'], 'href' => 'javascript:history.back(-1)');
      sys_msg($_LANG['catname_exist'], 0, $link);
      }
      if($cat['grade'] > 10 || $cat['grade'] < 0)
      {
      /* 价格区间数超过范围 */
      $link[] = array('text' => $_LANG['go_back'], 'href' => 'javascript:history.back(-1)');
      sys_msg($_LANG['grade_error'], 0, $link);
      }
      /* 入库的操作 */
      if ($db->autoExecute($ecs->table('category'), $cat) !== false)
      {
      $cat_id = $db->insert_id();
      if($cat['show_in_nav'] == 1)
      {
      $vieworder = $db->getOne("SELECT max(vieworder) FROM ". $ecs->table('nav') . " WHERE type = 'middle'");
      $vieworder += 2;
      //显示在自定义导航栏中
      $sql = "INSERT INTO " . $ecs->table('nav') .
      " (name,ctype,cid,ifshow,vieworder,opennew,url,type)".
      " VALUES('" . $cat['cat_name'] . "', 'c', '".$db->insert_id()."','1','$vieworder','0', '" . build_uri('category', array('cid'=> $cat_id), $cat['cat_name']) . "','middle')";
      $db->query($sql);
      }
      insert_cat_recommend($cat['cat_recommend'], $cat_id);
      admin_log($_POST['cat_name'], 'add', 'category');   // 记录管理员操作
      clear_cache_files();    // 清除缓存
      /*添加链接*/
      $link[0]['text'] = $_LANG['continue_add'];
      $link[0]['href'] = 'category.php?act=add';
      $link[1]['text'] = $_LANG['back_list'];
      $link[1]['href'] = 'category.php?act=list';
      sys_msg($_LANG['catadd_succed'], 0, $link);
      }
    }
      替换为:
    /*------------------------------------------------------ */
    //-- 商品分类添加时的处理
    /*------------------------------------------------------ */
    if ($_REQUEST['act'] == 'insert')
    {
      /* 权限检查 */
      admin_priv('cat_manage');
      /* 初始化变量 */
      $cat['cat_id']       = !empty($_POST['cat_id'])       ? intval($_POST['cat_id'])     : 0;
      $cat['parent_id']    = !empty($_POST['parent_id'])    ? intval($_POST['parent_id'])  : 0;
      $cat['sort_order']   = !empty($_POST['sort_order'])   ? intval($_POST['sort_order']) : 0;
      $cat['keywords']     = !empty($_POST['keywords'])     ? trim($_POST['keywords'])     : '';
      $cat['cat_desc']     = !empty($_POST['cat_desc'])     ? $_POST['cat_desc']           : '';
      $cat['measure_unit'] = !empty($_POST['measure_unit']) ? trim($_POST['measure_unit']) : '';
      $cat['show_in_nav']  = !empty($_POST['show_in_nav'])  ? intval($_POST['show_in_nav']): 0;
      $cat['style']        = !empty($_POST['style'])        ? trim($_POST['style'])        : '';
      $cat['is_show']      = !empty($_POST['is_show'])      ? intval($_POST['is_show'])    : 0;
      $cat['grade']        = !empty($_POST['grade'])        ? intval($_POST['grade'])      : 0;
      $cat['cat_recommend']  = !empty($_POST['cat_recommend'])  ? $_POST['cat_recommend'] : array();$cat['filter_attr']  = !empty($_POST['filter_attr'])  ? implode(',', array_unique(array_diff($_POST['filter_attr'],array(0)))) : 0;
      $cat['cat_name']     = !empty($_POST['cat_name'])     ? trim($_POST['cat_name'])     : '';
      $arrCatName = explode("," ,$cat['cat_name']);
      foreach($arrCatName as $arrCatNameValue)
      {
      $cat['cat_name'] = $arrCatNameValue;
      if (cat_exists($cat['cat_name'], $cat['parent_id']))
      {
      /* 同级别下不能有重复的分类名称 */
      $link[] = array('text' => $_LANG['go_back'], 'href' => 'javascript:history.back(-1)');
      sys_msg($_LANG['catname_exist'], 0, $link);
      }
      if($cat['grade'] > 10 || $cat['grade'] < 0)
      {
      /* 价格区间数超过范围 */
      $link[] = array('text' => $_LANG['go_back'], 'href' => 'javascript:history.back(-1)');
      sys_msg($_LANG['grade_error'], 0, $link);
      }
      /* 入库的操作 */
      if ($db->autoExecute($ecs->table('category'), $cat) !== false)
      {
      $cat_id = $db->insert_id();
      if($cat['show_in_nav'] == 1)
      {
      $vieworder = $db->getOne("SELECT max(vieworder) FROM ". $ecs->table('nav') . " WHERE type = 'middle'");
      $vieworder += 2;
      //显示在自定义导航栏中
      $sql = "INSERT INTO " . $ecs->table('nav') .
      " (name,ctype,cid,ifshow,vieworder,opennew,url,type)".
      " VALUES('" . $cat['cat_name'] . "', 'c', '".$db->insert_id()."','1','$vieworder','0', '" . build_uri('category', array('cid'=> $cat_id), $cat['cat_name']) . "','middle')";
      $db->query($sql);
      }
      insert_cat_recommend($cat['cat_recommend'], $cat_id);
      }
      }
      admin_log($_POST['cat_name'], 'add', 'category');   // 记录管理员操作
      clear_cache_files();    // 清除缓存
      /*添加链接*/
      $link[0]['text'] = $_LANG['continue_add'];
      $link[0]['href'] = 'category.php?act=add';
      $link[1]['text'] = $_LANG['back_list'];
      $link[1]['href'] = 'category.php?act=list';
      sys_msg($_LANG['catadd_succed'], 0, $link);
    }
      第三步:编辑/languages/zh_cn/admin/category.php  
      任意位置添加以下代码
      $_LANG['notice_cat_name']   = '如果您需要添加多个分类,请在分类之间使用半角逗号分隔。';

      后台清楚缓存即可



                                                        
    会员购买:>> 点击购买 << | 魔扣币购买:>> 点击购买 <<
    承接业务:服务器代维丨网站托管丨SEO
    联系客服:微信:morko-net | QQ:1367681973

    该用户从未签到

    2

    主题

    245

    回帖

    492

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    245
    贡献
    245
    威望
    0
    发表于 2019-5-31 22:51:02 | 显示全部楼层
    佩服佩服!

    该用户从未签到

    1

    主题

    246

    回帖

    494

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    247
    贡献
    247
    威望
    0
    发表于 2019-6-8 09:32:20 | 显示全部楼层
    做你最好的朋友,将爱在心底悄悄地掩埋;晨浴甘露,夜伴晚霞,让友谊的花静静地绽开。做你最好的朋友,跳动的脉搏与你同在;清澈似水,纯真如玉,惟有深深的牵挂和关爱。魔扣源码论坛做你最好的朋友,无论过去、现在和将来!

    该用户从未签到

    1

    主题

    256

    回帖

    513

    积分

    高级魔扣

    Rank: 4

    魔扣币
    256
    贡献
    256
    威望
    0
    发表于 2019-8-15 22:48:40 | 显示全部楼层
    伤心最大的建设性,在于明白,那颗心还在老地方。',

    该用户从未签到

    1

    主题

    268

    回帖

    538

    积分

    高级魔扣

    Rank: 4

    魔扣币
    269
    贡献
    269
    威望
    0
    发表于 2019-12-27 19:57:24 来自手机 | 显示全部楼层
    顶顶更健康

    该用户从未签到

    0

    主题

    274

    回帖

    548

    积分

    高级魔扣

    Rank: 4

    魔扣币
    274
    贡献
    274
    威望
    0
    发表于 2020-6-9 12:23:43 来自手机 | 显示全部楼层
    人世间的每一分温暖和友情,朋友间的每一个牵挂和祝福,都是心灵与心灵的交融!我珍惜我生命中每一个与我有缘的朋友!魔扣源码论坛让我们在交流中理解,在理解中前行!
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    • 联系我们
    • 新浪微博 :
    • 在线客服 :魔扣科技 
    • 源码QQ群 :魔扣源码论坛官方总群
    • 联系邮箱 :charlin#morko.net
    • 微信扫一扫
    快速回复 返回顶部 返回列表