ecshop商品分类添加图片功能

ecshop的分类添加分类图片的功能,下面归类一下:

1、最关键的就是在数据的category表里面加入category_img字段,用来保存咱们的图片地址,类型就是varchar就可以了。
2、在admin目录下面的templates的category_info.html文件,这个是后天的模板文件,在里面加入

<tr>
  <td class="label">{$lang.cat_img}:</td>
  <td><input name="cat_img" size="35" type="file" value='' />
  {if $cat_info.category_img}
  <img src="images/yes.gif" border="0" alt="" />
  {else}
  <img src="images/no.gif" alt="" />
  {/if}
  </td>
</tr>

3、然后修改category.php文件,if ($_REQUEST[‘act’] == ‘insert’) 下面加入

$cat['category_img'] = $image->upload_image($_FILES['cat_img']);

4、然后修改category.php文件,

在require(dirname(__FILE__) . '/includes/init.php');下增加
/***新增加的开始***/
include_once(ROOT_PATH . 'includes/cls_image.php');
$image = new cls_image($_CFG['bgcolor']);
/***新增加的结束***/

if ($_REQUEST['act'] == ‘update’) 下面加入

$image = $image->upload_image($_FILES['cat_img']);
if(!empty($image))
{
    $cat['category_img'] = $image;
}

5、修改category_tree.lbi文件,内容修改主要集中在以前直接显示category名字的地方加上判断,如果category有图片就是用图片,没有使用文字,我的修改玩如下:

<dl><a href="{$cat.url}"><!--{if $cat.category_img }-->
     <img src="{$cat.category_img}" alt="" />
<!-- {else } -->{$cat.name|escape:html}<!-- {/if} --></a></dl>
<dd><a href="{$child.url}">
 <!--{if $child.category_img }-->
     <img src="{$child.category_img}" alt="" />
<!-- {else } -->
      {$child.name|escape:html}
<!-- {/if} -->
 </a></dd>

6、大家会发现修改了模板,然后自己在后台上传完了图片前台还是不能显示,这事因为系统在读取category数据库的时候没有读取这个字段,所以我们要修改一下读取的地方了,修改文件lib_goods.php,找到函数 get_categories_tree 和 get_child_tree,把里面select的sql语句修改一下,我的修改完成的如下:

get_categories_tree中修改
$sql = 'SELECT cat_id,cat_name,parent_id,is_show,category_img ' .
                'FROM ' . $GLOBALS['ecs']->table('category') .
                "WHERE parent_id = '$parent_id' AND is_show = 1 ORDER BY sort_order ASC, cat_id ASC";
并增加
                $cat_arr[$row['cat_id']]['category_img'] = $row['category_img'];

get_child_tree中修改
$child_sql = 'SELECT cat_id, cat_name, parent_id, is_show,category_img ' .
   'FROM ' . $GLOBALS['ecs']->table('category') .
   "WHERE parent_id = '$tree_id' AND is_show = 1 ORDER BY sort_order ASC, cat_id ASC";
并增加

$three_arr[$row['cat_id']]['category_img'] = $row['category_img'];
最后修改:2年前
如果觉得我的文章对你有用,请随意赞赏

共有 0 条评论