【店铺精彩图库】模块,9/23更新

2016-07-07 16:47 来源:www.chinab4c.com 作者:ecshop专家

今天我对服务器增加精彩图库功能时发现,之前上传的附件内容有缺失,非常抱歉,现在补上。
ecmall\includes\models\uploadedfile.model.php 精彩图库上传模型修改 "var $_relation=array( 数组中增加以下内容
// 一个文件只能属于一个店铺图片
'belongs_to_pic' => array(
'model'=> 'pic',
'type' => BELONGS_TO,
'foreign_key'=> 'file_id',
'reverse' => 'has_uploadedfile',
'dependent'=> true
),"
sql语句里有个错误,store_id需要修改成storeid
新的附件已更新,并加入了导航管理的修改

下载后请尽量手动修改,熟悉下流程
如果覆盖的话以下几个文件请手动修改,因为我的有其它变动
ecmall\app\frontend.base.php
ecmall\themes\store\default\header.html



在此首先感谢颠子在我制作过程中给予的帮助,
欢迎大家互相提问,互相补充,提高效率,让ecmall越来越好。

代码不一定很完善,大家一起研究下,共同补充
图库原理:将图库信息生成html代码,更新到一个精彩图库导航文章里。
好处:用户可以修改导航名称,排序等
导航管理修改:请查第6楼


1、 精彩图库增加数据库 附件中按照附件中sql,导入新的数据表,一定别忘了~一些没安装成功的一般是数据表没导入


2、ecmall\app\frontend.base.php 精彩图库用户中心左菜单增加并修改顺序 "
$menu['im_seller']['submenu']['my_pic']= array(
'text'=> Lang::get('my_pic'),
'url'=> 'index.php?app=my_pic',
'name'=> 'my_pic',
'icon'=> 'ico12',
);"
3、ecmall\languages\sc-gbk\common.lang.php 精彩图库用户中心左栏对应名称
'my_pic'=> '精彩图库',
4、ecmall\app\my_pic.appe.php 精彩图库类 附件中
5、ecmall\languages\sc-gbk\my_pic.lang.php 精彩图库字库 附件中
6、ecmall\themes\mall\default\my_pic.index.html 精彩图库模板文件 附件中
7、ecmall\themes\store\default\header.html 精彩图库js文件导入
<SCRIPT src=""pic/jquerypic.js"" type=text/javascript></SCRIPT>
<LINK href=""pic/pic.css"" type=text/css rel=stylesheet>"
8、ecmall\includes\ecapp.base.php 精彩图库增加文件归属
define('BELONG_PIC',4);
9、ecmall\themes\mall\default\styles\default\css\user.css 精彩图库增加样式及文件
"/*精彩图库样式*/
.pic_list_pic { width: 770px; float: left; }
.small_pic_pic { width: 770px; position: relative; }
.small_pic_pic ul { width: 770px; }
.small_pic_pic li { width: 100px; height: 100px; margin: 0 5px 4px; display: inline; position: relative; float: left; cursor: pointer; }

.small_pic_pic .pic { width: 100px; height: 75px; margin: 0 auto; position: absolute; }
.small_pic_pic .bg { width: 100px; height: 16px; position: absolute; bottom: 1px; left: 1px; display: none; }
.small_pic_pic .operation { width: 100px; height: 13px; padding-top: 3px; position: absolute; bottom: 0; left: 0; background: #000; -moz-opacity: 0.5; opacity: .5; filter: alpha(opacity=50); }
.small_pic_pic .cut_in { float: left; margin-left: 10px; display: inline; width: 10px; height: 10px; background: url(../images/member/ico.gif) 0 -1095px; }
.small_pic_pic .delete { float: right; margin-right: 10px; display: inline; width: 10px; height: 10px; background: url(../images/member/ico.gif) 0 -634px; }
.small_pic_pic .titles { width: 90px; height: 16px; line-height: 15px; text-align: center; color: #3d3f3e; background: #fdf04c; border: 1px solid #ffba2f; position: absolute; bottom: -19px; left: 5px; z-index: 3; }
.small_pic_pic .line { width: 120px; height: 2px; overflow: hidden; background: #d8deda; position: absolute; bottom: -3px; left: -1px; }

.eject_btn_two .ico_pic { width: 87px; padding-left: 50px; background: url(../pic/ico_pic.gif) no-repeat 15px; }"
10、ecmall\includes\models\pic.model.php 精彩图库增加数据库模型 附件中
11、ecmall\app\swfupload.app.php 精彩图库增加批量上传函数
"1、增加常量
define('THUMB_WIDTH_PIC', 320);
define('THUMB_HEIGHT_PIC', 240);
2、增加图库上传模型
var $mod_pic; //店铺相册模型
修改function SwfuploadApp()
3、case BELONG_GOODS : 下面增加
case BELONG_PIC :$this->save_path = 'data/files/store_' . $this->store_id . '/pic';
break;
4、$this->mod_goods_image = &m('goodsimage');下面增加
$this->mod_pic = &m('pic');
5、if ($this->instance == 'goods_image') // 如果是上传商品相册图片 判断结束后增加
if ($this->instance == 'pic') // 如果是上传店铺相册图片
{
/* 生成缩略图 */
$thumbnail = dirname($file_path) . '/small_' . basename($file_path);
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH .'/' . $thumbnail, THUMB_WIDTH_PIC, THUMB_HEIGHT_PIC, THUMB_QUALITY);

/* 更新商品相册 */
$data = array(
'storeid'=> $this->store_id,
'pic_url'=> $file_path,
'thumbnail'=> $thumbnail,
'pic_name'=> $file['name'],
'file_id' => $file_id,
);
if (!$this->mod_pic->add($data))
{
$this->json_error($this->mod_picd->get_error());
return false;
}
$ret_info = array_merge($ret_info, array('thumbnail' => $thumbnail));
}
"
12、ecmall\app\comupload.app.php 精彩图库增加普通上传与远程图片上传函数
"原程序文章保存路径应该是写错了,去掉mall
elseif ($this->belong == BELONG_ARTICLE)
{
$dirname = 'data/files/mall/store_' . $this->visitor->get('manage_store').'/article';
}


1、增加常量
define('THUMB_WIDTH_PIC', 320);
define('THUMB_HEIGHT_PIC', 240);
两个方法里参数不一样
普通上传uploadedfile()方法里
2、elseif ($this->belong == BELONG_ARTICLE) 判断结束地方增加
elseif ($this->belong == BELONG_PIC)
{
$dirname = 'data/files/store_' . $this->visitor->get('manage_store').'/pic';
}
3、if ($this->instance == 'goods_image') // 如果是上传商品相册图片 判断结束后增加
if ($this->instance == 'pic') // 如果是上传店铺相册图片
{
/* 生成缩略图 */
$thumbnail = dirname($file_path) . '/small_' . basename($file_path);
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH .'/' . $thumbnail, THUMB_WIDTH_PIC, THUMB_HEIGHT_PIC, THUMB_QUALITY);

/* 更新商品相册 */
$mod_pic = &m('pic');
$pic = array(
'storeid'=> $this->store_id,
'pic_url'=> $file_path,
'thumbnail'=> $thumbnail,
'pic_name'=> $file['name'],
'file_id' => $file_id,
);
if (!$mod_pic->add($pic))
{
$this->_error($this->mod_picd->get_error());
return false;
}
$data['thumbnail'] = $thumbnail;
}
远程图片remote_image()方法修改
4、elseif ($this->belong == BELONG_ARTICLE) 判断结束地方增加
elseif ($this->belong == BELONG_PIC)
{
$dirname = 'data/files/store_' . $this->visitor->get('manage_store').'/pic';
}
5、if ($this->instance == 'goods_image') // 如果是上传商品相册图片 判断结束后增加
if ($this->instance == 'pic') // 如果是上传店铺相册图片
{
/* 生成缩略图 */
$thumbnail = dirname($new_url) . '/small_' . basename($new_url);
make_thumb(ROOT_PATH . '/' . $new_url, ROOT_PATH .'/' . $thumbnail, THUMB_WIDTH_PIC, THUMB_HEIGHT_PIC, THUMB_QUALITY);

/* 更新店铺相册 */
$mod_pic = &m('pic');
$pic = array(
'storeid'=> $this->store_id,
'pic_url'=> $new_url,
'thumbnail'=> $thumbnail,
'pic_name'=> substr($remote_url, strrpos($remote_url, '/')+1),
'file_id' => $file_id,
);
if (!$mod_pic->add($pic))
{
$this->_error($this->mod_picd->get_error());
return false;
}
$data['thumbnail'] = $thumbnail;
}"


回答:

代码不一定完善,大家一起研究下,共同补充

邦德来支持 :victory:

一个群里的一定等支持一下

不错,谢谢楼主的无私奉献,如果能在整站而不是要到店铺里才能看到图片那就好了,就像查看所有商品一样,所有店铺的产品都列出来

恩,如果店主发的是海报促销图片的话,整站调用还是不错的。
像这个精彩图库仅是店铺网店的一种辅助

ecmall\app\my_navigation.app.php 精彩图库-导航管理中编辑判断 "function edit()修改
1、$navigation = current($find_data);下增加
if($navigation[code] == ""pic"")
{
$navigation[content]=LANG::get('pic_content');
}
2、else中
$data = array(
'title'=> $_POST['title'],
'if_show' => $_POST['if_show'],
'content' => $_POST['nav_content'],
'sort_order' => $_POST['sort_order'],
);

$model_article =& m('article');
修改为
$model_article =& m('article');
$find_data= $model_article->find(""article_id = {$nav_id} AND store_id="" . $this->visitor->get('manage_store'));
if (empty($find_data))
{
$this->pop_warning('no_such_navigation');

return;
}
$navigation = current($find_data);

if($navigation[code] == ""pic"")
{
$data = array(
'title'=> $_POST['title'],
'if_show' => $_POST['if_show'],
'sort_order' => $_POST['sort_order'],
);
}
else
{
$data = array(
'title'=> $_POST['title'],
'if_show' => $_POST['if_show'],
'content' => $_POST['nav_content'],
'sort_order' => $_POST['sort_order'],
);
}"
ecmall\languages\sc-gbk\my_navigation.lang.php 精彩图库-导航管理中编辑判断-导航内容 "增加
'pic_content' => '编辑、修改图片信息请到“精彩图库”管理页面。',"

支持一下,希望楼主继续加油,开发出更多的东西来。

不错,高手

顶一个~

顶~~
很是欣赏你的为人!
谢谢了!!

今天我对服务器增加精彩图库功能时发现,之前上传的附件内容有缺失,非常抱歉,现在补上。
ecmall\includes\models\uploadedfile.model.php精彩图库上传模型修改"var $_relation=array( 数组中增加以下内容
// 一个文件只能属于一个店铺图片
'belongs_to_pic' => array(
'model'=> 'pic',
'type' => BELONGS_TO,
'foreign_key'=> 'file_id',
'reverse' => 'has_uploadedfile',
'dependent'=> true
),"
sql语句里有个错误,store_id需要修改成storeid
新的附件已更新,并加入了导航管理的修改


我喜欢这东西~ 收下了