转之--http://www.cnblogs.com/wangblognet/archive/2012/12/09/2809916.html

ecshop的模板有很多不完善的地方,比如添加商品分类的时无法添加分类代表图,不能实现我们想要的效果,那么该如解决呢?

其实,我们只需要增加少量的代码就可以实现此功能。

1、修改/admin/template/category_info.html

<tr>

<td>{$lang.cat_img}:</td>

<td>

<input name=”cat_img” size=”35″ type=”file” />

{if $cat_info.category_img}

<img src=”/{$cat_info.category_img}” border=”0″ alt=”" />

{/if}

</td>

</tr>

2.修改/languages/zh_cn/admin/category.php

增加一个语言配置项

$_LANG['cat_img'] = ‘分类代表图片80*134′;

3.修改/admin/category.php 服务器添加上传图片的代码

在 require(dirname(__FILE__) . ‘/includes/init.php’);下一行

引入       cls_image.php图片上传类

include_once(ROOT_PATH . ‘includes/cls_image.php’);

-----------------------------------------------------------------------------------

在     if ($_REQUEST['act'] == ‘insert’){     下面增加代码

/* 二次开发追加 分类代表图片 */ 
$image = new cls_image(); 
$cat['category_img'] = $image->upload_image($_FILES['cat_img']);

-----------------------------------------------------------------------------------

在         if ($_REQUEST['act'] == ‘update’){         下面增加代码

/* 二次开发追加分类代表图片 */ 
$image = new cls_image();
$image = $image->upload_image($_FILES['cat_img']);
if(!empty($image)){
$cat['category_img'] = $image;
}

4.接下来,上传完点编辑的时候我们还要显示刚上传的图片,那么需要修改

/includes/lib_common.php里的function cat_list( 函数

在250行附近的$sql变量构造的时候追加一个category_img字段

$sql = “SELECT c.cat_id, c.cat_name, c.measure_unit, c.parent_id, c.is_show, c.show_in_nav, c.grade, c.sort_order, COUNT(s.cat_id) AS has_children,c.category_img “.

5.别忘记给xxx_category表增加一个varchar类型的category_img字段,用来存储上传的图片路径字符串

下面来说一下前台怎么显示,找取根目下的category.php文件。找到代码

function get_cat_info($cat_id)

{

return $GLOBALS['db']->getRow(‘SELECT cat_name,category_img, keywords, cat_desc, style, grade, filter_attr, parent_id FROM ‘ . $GLOBALS['ecs']->table(‘category’) .

” WHERE cat_id = ‘$cat_id’”);

}

加上 category_img。

再找到代码

if (!empty($cat))

{

$smarty->assign(‘keywords’, htmlspecialchars($cat['keywords']));

$smarty->assign(‘description’, htmlspecialchars($cat['cat_desc']));

$smarty->assign(‘cat_style’, htmlspecialchars($cat['style']));

$smarty->assign(‘catname’, htmlspecialchars($cat['cat_name']));//自己加的

$smarty->assign(‘categoryimg’, htmlspecialchars($cat['category_img']));//自己加的

}

这样在category.dwt模板文件里用{$categoryimg}就可以调用了。

(转)ECSHOP给分类添加代表图的更多相关文章

  1. ECSHOP给分类添加图

    1.修改/admin/template/category_info.html <tr> <td>{$lang.cat_img}:</td> <td> & ...

  2. Ecshop:后台添加新功能栏目以及管理权限设置

    一.添加菜单项 打开 /admin/includes/inc_menu.php文件(后台框架左边菜单),在最后添加一行如下: $modules['17_other_menu']['sns_list'] ...

  3. ecshop后台增加|添加商店设置选项和使用方法详解

    有时候我们想在Ecshop后台做个设置.radio.checkbox 等等来控制页面的显示,看看Ecshop的设计,用到了shop_config这个商店设置功能 Ecshop后台增加|添加商店设置选项 ...

  4. 判断ecshop未付款添加去付款按钮

    判断ecshop未付款添加去付款按钮,打开ecshop模板目录下user_transaction.dwt找到{$item.handler} 这个变量 给它下面添加以下代码 {if $item.pay_ ...

  5. 给textarea添加背景图

    给textarea添加背景图用的好也很有意思哦. <style type="text/css"> textarea{ background: url(img/carto ...

  6. Xcode7创建的项目添加启动图有问题?

    在Xcode7下创建的项目,由于某个原因,Xcode7添加启动图有点不一样.Xcode7与Xcode6不一样的地方在于:Xcode6的LaunchScreen.xib改成了LaunchScreen.s ...

  7. ecshop 无限分类解析(转)

    对ecshop无限级分类的解析,认真分析后发现真的其算法还是比较精典的其实并不难理解,有举例方便大家理解 function cat_options($spec_cat_id, $arr) { stat ...

  8. 《PHP制作个人博客》之四:分类添加及前端导航数据用php动态调取

    大家好,今天我们接着上一节的全栈营销个人博客制作,上一节我们把博客的模板给加载运行起来.今天我们主要讲解后台模板分类的添加,后台导航的添加,及前台导航的动态调用.一个好的博客,导航很重要,导航就像你网 ...

  9. angular4模块中标签添加背景图

    一.现象 一个全屏的“走马灯”每项需要添加背景图,在循环标签里需要动态添加行内样式 二.解决 1.首先有一个图片数组,如: export class AppComponent { array = [& ...

随机推荐

  1. Solr4.8.0源码分析(20)之SolrCloud的Recovery策略(一)

    Solr4.8.0源码分析(20)之SolrCloud的Recovery策略(一) 题记: 我们在使用SolrCloud中会经常发现会有备份的shard出现状态Recoverying,这就表明Solr ...

  2. BZOJ 1015 星球大战

    Description 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个星系.某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系中几乎所有的星球.这些星球通过 ...

  3. 获取Delphi所有类的类信息

    Delphi遍历进程中所有Class的TypeInfo,即便是在implementation中的class或者其他 class的private的子class. 一般普通EXE中的TypeInfo存放在 ...

  4. width:auto; 和 width:100%;的不同

    width:auto:会将元素撑开至整个父元素width,但是会减去子节点自己的margin,padding或者border的大小.width:100%:会强制将元素变成和父元素一样的宽,并且添加额外 ...

  5. HDU 2476 String painter(记忆化搜索, DP)

    题目大意: 给你两个串,有一个操作! 操作时可以把某个区间(L,R) 之间的所有字符变成同一个字符.现在给你两个串A,B要求最少的步骤把A串变成B串. 题目分析: 区间DP, 假如我们直接想把A变成B ...

  6. 【转】Java运算符优先级

    原文网址:http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 ...

  7. Ubuntu 12.04 下安装 Eclipse

    方法一:(缺点是安装时附加openjdk等大量程序并无法去除,优点是安装简单) $ sudo apt-get install eclipse 方法二:(优点是安装内容清爽,缺点是配置麻烦)1.安装JD ...

  8. vector::erase returns incompatible iterator in debug build

    关于std::vector中erase的用法http://www.cplusplus.com/reference/vector/vector/erase/ #include <vector> ...

  9. 双有序队列算法——处理哈夫曼K叉树的高效算法

    算法介绍: 哈夫曼树的思路及实现众所周知,大部分是用堆来维护和实现,这种思路比较清晰,在K比较小的时候处理较快(具体例子接下来再说),而且编程复杂度不是很高,利于应用.但是,其所用的数据结构是树,是在 ...

  10. poj1026

    题目大意:暗号 Bod 和 Alice 计划使用一种全新的编码方案,令人惊讶的是这不是一个公开的公匙密码,但是他们的编码基于密匙,在Philadelphia on February 16th他们的会议 ...