ShopEx网店系统商业版 V4.3-V4.4.2 快速升级

1

第一步:下载升级包文件;

下载地址: 下载一 下载二
2

第二步:解压缩升级包文件,对应文件目录用ftp工具以二进制方式上传至服务器空间覆盖原系统文件;

如何二进制上传?
3

第三步:登陆客户中心,下载4.4版本的license文件;

license.mal 下载时请注意以mal作为文件扩展名,用ftp工具以二进制方式上传至服务器空间 /include/ 下覆盖同名文件license.mal;
4

第四步:在浏览器中输入http://您的商店域名/syssite/update43_44/update.php,浏览此页面进行数据更新;

浏览器无法打开上述地址?可能是您的商店安装时是将syssite作为主目录,则将无法打开上述地址,请运行http://您的商店域名/update43_44/update.php
5

第五步:登陆您的商店后台进入菜单:工具-->系统工具-->数据库更新,点击保存按钮进行数据库更新;

6

第六步:下载V440至V442的升级文件;

下载地址: 下载一 下载二
7

第七步:解压缩补丁包文件,对应文件目录用ftp工具以二进制方式上传至服务器空间覆盖原系统文件;

如何二进制上传?
8

第八步:下载模板升级包;

下载地址:模板升级包下载

此次升级后新版模板演示:(选择您所使用的相应模板编号点击查看)
shopex00001 shopex00002 shopex00003 shopex00004
shopex00005 shopex00006 shopex00007 shopex00008

另外,此次升级后增加了8套新模板,您可以查看演示之后决定是否需要使用新模板,如下:
shopex00009 shopex00010 shopex00011 shopex00012
shopex00013 shopex00014 shopex00015 shopex00016
如果您决定使用上面这8套新模板的话,则可以去此处下载,下载后登陆您的商店后台进入菜单:设置-->模板管理-->上传模板, 上传.pak结尾的模板文件 ,然后加载此模板就完成了此次升级的全部过程(不用再继续下面的第十一、十二、十三步),之后再将您在原来模板上的一些编辑(譬如上传logo等)在此新模板上重新编辑一次就可以继续经营您的商店系统了。

如果您决定继续使用原来的模板,则继续进行下面的第八步。

9

第九步:解压缩模板升级包文件,对应文件目录用ftp工具以二进制方式上传至服务器空间覆盖原系统文件;

10

第十步:查看以下加载新模板后将会升级的网页内容,备份其中您所进行模板编辑修改过的图片或者文字;

(为什么要进行模板备份?因为每次系统升级也需要模板进行升级,所以您通过后台模板编辑页面对模板所进行的修改如果恰好有此次升级的区块,则这部分修改在升级之后就会被新的区块所覆盖,因此您需要在升级模板之前先了解到此次模板升级所需要覆盖的区块,然后查看您是否修改过这些区块,如果都没有修改过,则可以立即开始进行模板升级,如果有些区块您进行过修改,那么就先进行备份,然后再进行模板升级,升级之后再将备份下来的图片或者文字重新进行一次模板编辑、修改一次就可以了。)
注:所谓通过模板编辑页面进行的修改是指进入后台模板编辑页面后,对模板所进行的图片或文字等的修改,除此之外都不属于模板编辑修改(譬如通过后台菜单:设置-->系统设置-->关于我们 所输入的文字或图片就不属于模板编辑修改,因此也不用备份)。

此次升级模板所更新的内容如下:(注意:带“*”为新增的模板文件,带“”的页面如果您进行了模板编辑则需要进行备份,不带“”的则无需备份)

网页区块名称 标签名 升级内容 所在页面 代码详情
首页-商品目录菜单方式 TPL_CATEGORY_TREE:
修改类别生成脚本,外观没有变化 点击查看 ->详细
购物流程-输入收货人信息页 TPL_RECEIVERINPUT: 在表单内增加送货时间 点击查看 ->详细
购物流程-确认订单信息页 TPL_ORDERDETAILS: 在收货人信息表单中增加送货时间表单标签 点击查看 ->详细
购物流程-订单生成成功页 TPL_ORDEROK: 增加送货时间显示标签 点击查看 ->详细
会员中心-订单详细页 TPL_MEMBERORDERDETAILS: 在收货人信息中增加送货时间显示单标签 点击查看 ->详细
首页-导航菜单 *shopbbs.dwt: 增加此框架文件 点击查看  
同上 *TPL_SHOPBBS: 增加此功能名,用于显示和发表客户留言   ->详细
商品详细页-商品属性 TPL_GOODSINFO: 修改了显示方式和脚本 点击查看 ->详细
商品详细页-商品评论 *goods_review_pub.dwt: 发表商品评论 点击查看  
同上 *goods_review_list.dwt: 商品评论列表    
同上 *TPL_GOODSREVIEWPUB: 发表商品评论   ->详细
同上 *TPL_GOODSREVIEWLIST: 商品评论列表   ->详细
高级搜索页 TPL_SEARCHMORE: 增加可按照扩展属性进行搜索 点击查看 ->详细
取回密码页 *forget_question.dwt: 取回密码的提示问题页面    
同上 *TPL_FORGETQUESTION: 取回密码的提示问题   ->详细
首页-底部版权信息 增加产品目录的链接: <A href="catalog/">产品目录 </A> 点击查看  
  增加缓存定义文件: 在模板内新增缓存定义文件cache.txt,本文件定义了哪些框架文件生成的页面应被缓存(第一行),哪些功能标签即使在框架文件缓存时也不应被缓存(第二行),各元素间以|符号分隔。(系统模板的cache.txt见本文档附件,如果您新增过模板文件或功能标签,请作相应修改)    
11

第十一步:请确认您已经查看过上述模板升级后需要进行备份的说明,并且已经备份了相关文字和图片,再进入菜单: 设置-->模板管理-->模板列表 , 会看到每个模板下面有一个“升级至441”的按钮,如图点击查看,依次点击每个模板下面的此按钮即可完成模板的升级,也就完成了此次升级的全过程。

如在升级过程或者升级后遇到问题,请登陆客户中心提交您的问题,我们将进行解决。

TOP

附:Shopex网上商店系统模板升级程序代码说明


TPL_CATEGORY_TREE:
修改类别生成脚本
将下面的脚本
<script language="JavaScript">
var myTree = new Tree();
<!-- BEGIN category_branchrow -->
var branch{category_treeid} = new branch("branch{category_treeid}","{category_treename}");
<!-- END category_branchrow -->
<!-- BEGIN category_leafrow -->
{category_treepobject}.add(new leaf("{category_treename}",hrefbase64.href+'&gcat={category_treeid}'));
<!-- END category_leafrow -->
<!-- BEGIN category_endrow -->
{category_objectree}.add(branch{category_treeid});
<!-- END category_endrow -->
myTree.write();
</script>
替换为
{treescript}
TOP

TPL_RECEIVERINPUT:在表单内增加送货时间
<select name="receiver_year">
<option value="2005" >2005</option>
<option value="2006" >2006</option>
</select>
<select name="receiver_month">
<option value="1" >1</option>
<option value="2" >2</option>
<option value="3" >3</option>
<option value="4" >4</option>
<option value="5" >5</option>
<option value="6" >6</option>
<option value="7" >7</option>
<option value="8" >8</option>
<option value="9" >9</option>
<option value="10" >10</option>
<option value="11" >11</option>
<option value="12" >12</option>
</select>
<select name="receiver_day">
<option value="1" >1</option>
<option value="2" >2</option>
<option value="3" >3</option>
<option value="4" >4</option>
<option value="5" >5</option>
<option value="6" >6</option>
<option value="7" >7</option>
<option value="8" >8</option>
<option value="9" >9</option>
<option value="10" >10</option>
<option value="11" >11</option>
<option value="12" >12</option>
<option value="13" >13</option>
<option value="14" >14</option>
<option value="15" >15</option>
<option value="16" >16</option>
<option value="17" >17</option>
<option value="18" >18</option>
<option value="19" >19</option>
<option value="20" >20</option>
<option value="21" >21</option>
<option value="22" >22</option>
<option value="23" >23</option>
<option value="24" >24</option>
<option value="25" >25</option>
<option value="26" >26</option>
<option value="27" >27</option>
<option value="28" >28</option>
<option value="29" >29</option>
<option value="30" >30</option>
<option value="31" >31</option>
</select>
<select name="receiver_hour">
<option value="0" >00:00</option>
<option value="1800" >00:30</option>
<option value="3600" >01:00</option>
<option value="5400" >01:30</option>
<option value="7200" >02:00</option>
<option value="9000" >02:30</option>
<option value="10800" >03:00</option>
<option value="12600" >03:30</option>
<option value="14400" >04:00</option>
<option value="16200" >04:30</option>
<option value="18000" >05:00</option>
<option value="19800" >05:30</option>
<option value="21600" >06:00</option>
<option value="23400" >06:30</option>
<option value="25200" >07:00</option>
<option value="27000" >07:30</option>
<option value="28800" >08:00</option>
<option value="30600" >08:30</option>
<option value="32400" >09:00</option>
<option value="34200" >09:30</option>
<option value="36000" >10:00</option>
<option value="37800" >10:30</option>
<option value="39600" >11:00</option>
<option value="41400" >11:30</option>
<option value="43200" >12:00</option>
<option value="45000" >12:30</option>
<option value="46800" >13:00</option>
<option value="48600" >13:30</option>
<option value="50400" >14:00</option>
<option value="52200" >14:30</option>
<option value="54000" >15:00</option>
<option value="55800" >15:30</option>
<option value="57600" >16:00</option>
<option value="59400" >16:30</option>
<option value="61200" >17:00</option>
<option value="63000" >17:30</option>
<option value="64800" >18:00</option>
<option value="66600" >18:30</option>
<option value="68400" >19:00</option>
<option value="70200" >19:30</option>
<option value="72000" >20:00</option>
<option value="73800" >20:30</option>
<option value="75600" >21:00</option>
<option value="77400" >21:30</option>
<option value="79200" >22:00</option>
<option value="81000" >22:30</option>
<option value="82800" >23:00</option>
<option value="84600" >23:30</option>
</select>

TOP

TPL_ORDERDETAILS:在收货人信息表单中增加送货时间表单标签
<select name="receiver_year">{orderdetails_receiveryear}</select>
<select name="receiver_month">{orderdetails_receivermonth}</select>
<select name="receiver_day">{orderdetails_receiverday}</select>
<select name="receiver_hour">{orderdetails_receiverhour}</select>

TOP

TPL_ORDEROK:增加送货时间显示标签
{orderok_sendtime}

TOP

TPL_MEMBERORDERDETAILS: 在收货人信息中增加送货时间显示单标签
{memberorderdetails_sendtime}

TOP

*TPL_SHOPBBS:增加此功能名,用于显示和发表客户留言

显示标签:
{shopbbs_time} 显示留言发表时间
{shopbbs_title} 显示留言标题
{shopbbs_reply} 显示店主回复

表单标签
Type Name Value 描述
text comment_name {comment_name} 留言者姓名
text comment_email {comment_email} 留言者邮件
text comment_tel {comment_tel} 留言者电话

内置脚本
<SCRIPT LANGUAGE="JavaScript">
<!--
function Form_Validator(frm)
{
if(frm.comment_name.value=="")
{
alert("请录入姓名!");
frm.comment_name.focus();
return false;
}
if(frm.comment_email.value=="")
{
alert("请录入Email!");
frm.comment_email.focus();
return false;
}
if(frm.commenttitle.value=="")
{
alert("请录入留言内容!");
frm.commenttitle.focus();
return false;
}
}
//-->
</SCRIPT>

TOP
TPL_GOODSINFO:修改了显示方式和脚本

增加的显示标签:
{goodsinfo_attrimg} 组合商品显示附加商品的图片,只能作为图片的路径
{goodsinfo_num} 组合商品显示附加商品的数量
{shopbbs_reply} 显示店主回复

将原先的脚本替换为以下的脚本:
<script language=javascript>
<!--
var arr_zjprice = new Array( );
{arr_zjfirstprice}
//parameter: attr num, good price, element id, input type, change type
function changeprice(j, price, i, mark)
{
if (mark == 1)
{
var attr_total=0;
var loopi = 0;
arrcb = eval( 'document.FORM_TPL_GOODSINFO.attr' + j);
arrnum = eval( 'document.FORM_TPL_GOODSINFO.buynum' + j);
while(arrcb[loopi])
{
if (arrnum) var buynum = arrnum[loopi].value;
else var buynum = 1;
if (arrcb[loopi].checked == true)
attr_total += (arrcb[loopi].title * buynum);
loopi++;
}
if (loopi == 0)
{
if (arrnum) var buynum = buynum.value;
else var buynum = 1;
if (arrcb.checked == true)
var attr_total = arrcb.title * buynum;
else
var attr_total = 0;
}
var newvalue = (FORM_TPL_GOODSINFO.hiddenprice.value * 1) + (attr_total - arr_zjprice[j]);
arr_zjprice[j] = attr_total;

var tmp_new = newvalue * 100;
newvalue = Math.round(tmp_new) / 100;

FORM_TPL_GOODSINFO.hiddenprice.value = newvalue;
newprice.innerHTML = newvalue;
}
else
{
selnew = eval( 'FORM_TPL_GOODSINFO.sel' + i );

if (selnew) var selnum = selnew.value;
else var selnum = 1;
var newvalue = (FORM_TPL_GOODSINFO.hiddenprice.value * 1 + price * selnum - arr_zjprice[j] * 1);

var tmp_new = newvalue * 100;
newvalue = Math.round(tmp_new) / 100;

FORM_TPL_GOODSINFO.hiddenprice.value = newvalue;
newprice.innerHTML = newvalue;
arr_zjprice[j] = price * selnum;
cbattr = eval( 'FORM_TPL_GOODSINFO.id' + i );
cbattr.checked = true;
}

var arr_img = new Array();
{arr_img}
img = eval( 'FORM_TPL_GOODSINFO.img' + j );
cb = eval( 'FORM_TPL_GOODSINFO.id' + i );

if (cb.checked == true)
{
if (arr_img[i] == '')
img.style.display = 'none' ;
else
{
img.src = '{img_dir}pictures/productsimg/small/'+arr_img[i]+'.gif' ;
img.style.display = '' ;
}
}
else
{
img.style.display = 'none' ;
}
}

function addshopcart(goodzh, stornum, gid)
{

var return_str="";
if (goodzh == 1)
{
var str_attr = "{str_attr}";
var arr_attr = new Array( );
arr_attr = str_attr.split(",");

for (i = 1; i < arr_attr.length; i++)
{
cb = eval( 'document.FORM_TPL_GOODSINFO.id' + arr_attr[i]);

switch (cb.tagName)
{
case "select":
cb.value;
break;
case "INPUT":
sel = eval( 'document.FORM_TPL_GOODSINFO.sel' + arr_attr[i]);
if (sel) var selnum = sel.value;
else var selnum = 1;
if (cb.checked == true)
return_str += "@"+cb.value+"^"+selnum;
break;
}
}
}
if (return_str != "")
return_str = "&addgid="+return_str;

temp=window.open('addshopcart.do?goodsid='+gid+return_str,'shopcat','width=700,height=600,scrollbars=yes');
temp.focus();
}
// -->
</script>


TOP

*TPL_GOODSREVIEWPUB:发表商品评论

显示标签:
{review_goodsname} 发表评论所针对的商品名称

表单标签
Type Name Value 描述
textarea commenttitle   留言文本框

TOP

*TPL_GOODSREVIEWLIST:商品评论列表
显示标签:
{review_goodsname} 发表评论所针对的商品名称
{goodsreview_time} 发表评论时间
{goodsreview_title} 发表评论内容
{goodsreview_reply} 店主回复

循环标签:

<!-- BEGIN goodsreview_row 0,x -->

评论列表循环开始标记,x为按x列显示
<!-- END goodsreview_row -->
评论列表循环结束标记

TOP

TPL_SEARCHMORE:

增加的显示标签:
{attrname} 扩展属性名称
{inputshow} 扩展属性文本框

循环标签:

<!-- BEGIN search_row 0,1 -->

扩展属性循环开始标记,x为按x列显示
<!-- END search_row -->
扩展属性循环结束标记

增加脚本:
<SCRIPT language=JavaScript>
function changesubmit()
{
FORM_TPL_SEARCHMORE.gOo.value = "{gOourl}";
FORM_TPL_SEARCHMORE.submit();
}
</SCRIPT>

TOP

*
TPL_FORGETQUESTION: 取回密码的提示问题

显示标签:
{username} 显示用户名
{pw_question} 取回密码的提示问题