分享几个Ecshop中二次开发的常见方法

日期:2016/5/5 17:28:00 来源:本网整理 阅读:13
s">

分享几个Ecshop中二次开发的常见方法

作者:佚名 字体:[增加 减小] 来源:互联网 时间:09-29 10:20:56 我要评论

Ecshop虽然写的很烂,但是也是一种解决方法,如让我们自己开发一个这样的商城,也是费时费力得不偿失,烂就烂点吧,我们可以通过二次开发,让他边的很强大,下面介绍几个Ecshop中二次开发的常见方法
dy("gg_l");
dy("gg_r");
">

收货人信息的省市区设成非必选项

一般面向国外用户的ECSHOP商城,可能会有这方面的需求:【将Ecshop中收货人信息的省市区设成非必选项】,其实也就是只留一个“请选择国家”的下拉选择框。

修改相关JS文件

打开 /js/shopping_flow.js 文件,将下面JS代码删除掉

JavaScript Code复制内容到剪贴板
  1. if (frm.elements['province'] && frm.elements['province'].value == 0 && frm.elements['province'].length > 1)   
  2.  {   
  3.  err = true;   
  4.  msg.push(province_not_null);   
  5.  }   
  6.  if (frm.elements['city'] && frm.elements['city'].value == 0 && frm.elements['city'].length > 1)   
  7.  {   
  8.  err = true;   
  9.  msg.push(city_not_null);   
  10.  }   
  11.  if (frm.elements['district'] && frm.elements['district'].length > 1)   
  12.  {   
  13.  if (frm.elements['district'].value == 0)   
  14.  {   
  15.  err = true;   
  16.  msg.push(district_not_null);   
  17.  }   
  18.  }  
修改程序文件

修改 /inlcudes/lib_order.php 文件,将下列PHP代码删除掉

PHP Code复制内容到剪贴板
  1. if ($res)   
  2.  {   
  3.  if (emptyempty($consignee['province']))   
  4.  {   
  5.  /* 没有设置省份,检查当前国家下面有没有设置省份 */  
  6.  $pro = get_regions(1, $consignee['country']);   
  7.  $res = emptyempty($pro);   
  8.  }   
  9.  elseif (emptyempty($consignee['city']))   
  10.  {   
  11.  /* 没有设置城市,检查当前省下面有没有城市 */  
  12.  $city = get_regions(2, $consignee['province']);   
  13.  $res = emptyempty($city);   
  14.  }   
  15.  elseif (emptyempty($consignee['district']))   
  16.  {   
  17.  $dist = get_regions(3, $consignee['city']);   
  18.  $res = emptyempty($dist);   
  19.  }   
  20.  }  
然后收货人信息那里,只选择国家不选择省市区,也照样能提交。

修改底部的在线人数

建站之初,网站的在线人数肯定不会很多,那么我们可以稍微修改下ECSHOP的程序,让页面底部显示的在线人数 翻几番。

具体方法如下:

打开 /includes/lib_insert.php文件,找到下面代码

PHP Code复制内容到剪贴板
  1. $online_count = $GLOBALS['db']->getOne("SELECT COUNT(*) FROM " . $GLOBALS['ecs']->table('sessions'));  
将之修改为:

PHP Code复制内容到剪贴板
  1. $online_count = $GLOBALS['db']->getOne("SELECT COUNT(*) FROM " . $GLOBALS['ecs']->table('sessions'))*15;  

这样,你的ECSHOP商城显示的在线人数就会多15倍,当然你也可以将15改成100,这样就会多100倍。

文章的浏览次数

修改数据库结构

进ECSHOP后台 》 数据库管理 》SQL查询 ,输入下面SQL语句


复制代码
代码如下:

ALTER TABLE `ecs_article` ADD `click_count` INT( 10 ) NOT NULL


点击 “提交查询”

修改 /article.php

搜索

PHP Code复制内容到剪贴板
  1. else  
  2. {   
  3.  $smarty->display('article_pro.dwt'$cache_id);   
  4. }  
在它下面增加一行PHP代码,如下:


复制代码
代码如下:

$db->query("update ".$ecs->table('article')." set click_count=click_count+1 where article_id=$article_id") ;


修改 /themes/default/article.dwt

找到


复制代码
代码如下:

{$article.add_time}


在它后边增加PHP代码,如下:


复制代码
代码如下:

/ 浏览次数:{$article.click_count}


这种修改方法,要清除缓存或者缓存自动更新后才能体现出最新的浏览次数来,如果你想能实时显示最新的浏览次数,就要构造一个INSERT函数,并在模板中用 {insert name =“xxx”} 调用。

  • 本文相关:
  • ECSHOP模版系统Assign和Include模版标签使用介绍
  • ECSHOP模版系统显示标签使用介绍
  • ecshop配送方式和对应的文件整理
  • ECSHOP模板系统控制标签使用介绍
  • ECSHOP模板系统变量调节标签使用说明
  • 在ECSHOP商品搜索页显示商品货号的方法
  • ECSHOP购物车页面显示商品简单描述的实现方法
  • ECSHOP全部品牌页实现分页换页功能方法
  • ECSHOP中的会员中心2条修改方法(等级价格.vip)
  • ECSHOP用户中心的订单详情页显示商品缩略图的方法
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2015 www.zgxue.com All Rights Reserved