ECSHOP二次开发:ECSHOP去版权,禁止提交信息到官网完全版

作者:我就是个世界 发表于:2013-07-01
首先ECSHOP是国内优秀的开源网店程序,最初是由Comsenz公司推出的一款B2C独立网店系统,现已出售给ShopEX的开发商上海商派网络科技有限公司。适合企业及个人快速构建个性化网上商店。系统是基于PHP语言及MYSQL数据库构架开发的跨平台开源程序。

ECShop悉心听取每一位商家的需求与建议,不仅设计了人性化的网店管理系统帮助商家快速上手,还根据中国人的购物习惯改进了购物流程,实现更好的用户购物体验。

自从被ShopEX收购后,基本属于停滞开发阶段,原因大家都懂。但这并不能阻止大伙儿对ECSHOP的热情,它的开源给广大中小电商或个人站长另一个选择,ECSHOP非常适合二次开发,基于ECSHOP二次开发的案例比比皆是,网上针对ECSHOP的插件或插件开发者们更是不计其数,当然也有不少投机倒把者,拿别人东西去贩卖,无技术、无售后。购卖者要擦亮眼睛,找那些有实力的开发者购买,起码有售后,或者说不是堆砌起来的垃圾代码。

[b]接下来步入正题:[/b]

由于ecshop的API调用,导致未经授权的站点后台打开速度缓慢或卡死现象时有发现,另据网络不可靠消息来源,ECSHOP会通过API自动上传站点信息到官网,甚至包含某些敏感信息,所以禁止API调用是小店商们必要的步骤。[separator]

其中最让我受不了的就是导致后台卡死,所以API非去不可。

=================================
[b]ECSHOP去版权和随机函数[/b]
=================================
[code]
1、去掉Powered by ECShop
修改文件:includes/lib_main.php
查找:$page_title = $GLOBALS[’_CFG’][’shop_title’] . ‘ - ‘ . ‘Powered by ECShop’;
将其改为
$page_title = $GLOBALS[’_CFG’][’shop_title’];

2、去掉页脚的版权信息
在ecshop根目录/themes/当前模板名/library/page_footer.lbi中, 找到如下代码并删除:
<a href="http://www.ecshop.com" target="_blank" style="font-size:10px">Powered by <strong><span style="color: #3366FF">ECShop</span> <span style="color: #FF9966">{$ecs_version}</span></strong></a><br />


删掉底部ecshop的logo
在ecshop根目录/themes/当前模板名/library/page_footer.lbi, 找到如下代码:
<img src="../images/footer-logo.gif" alt="" id="footer-logo" />
将其删掉即可.

3、修改文件代码头部的Generator标记
修改文件:includes/cls_ecshop.php
查找:
define('APPNAME', 'ECSHOP');
修改为:
define('APPNAME', '自定义的网站代号');

4、修改文件:js/common.js
查找:onload = function() 代码段,全部删除
[/code]

=================================
[b]移除提交资料到ECSHOP官方的代码[/b]
=================================
[code]
1、修改文件:admin/shop_config.php
查找:$spt .= '"></script>';
在之后添加一行:
$spt = '';


2、修改文件:admin/templates/index.htm
查找:
  <frameset rows="0, 0" framespacing="0" border="0">
  <frame src="http://api.ecshop.com/record.php?mod=login&url={$shop_url}" id="hidd-frame" name="hidd-frame" frameborder="no" scrolling="no">
  </frameset>
删除之

3、在MYSQL数据库的数据表:shop_config中查找字段code值为 certi 的记录,其值为:http://service.shopex.cn/openapi/api.php ,修改为一个错误的网址!
如:http://xxxxxxxxxx/openapi/api.php

4、修改文件:admin/templates/top.htm
查找:
Ajax.call('index.php?is_ajax=1&act=license','', start_sendmail_Response, 'GET', 'JSON');
注释掉

5、修改文件:admin/templates/menu.htm
查找:
<script language="JavaScript" src="http://api.ecshop.com/menu_ext.php?charset={$charset}&lang={$help_lang}"></script>
注释掉

6、修改文件:admin/templates/start.htm
查找:
<ul style="padding:0; margin: 0; list-style-type:none; color: #CC0000;">
<!-- <script type="text/javascript" src="http://bbs.ecshop.com/notice.php?v=1&n=8&f=ul"></script>-->
</ul>
删除之

7、修改文件:admin/index.php
查找:
$t = new transport;
        $api_comment = $t->request('http://api.ecshop.com/checkver.php', $apiget);
        $api_str = $api_comment["body"];
        echo $api_str;
全部注释掉

8、删除后台所有默认的友情链接

9、如果要关闭警告和各种错误,可以删除admin/templates/start.htm 下面这几行:

<ul id="lilist" style="padding:0; margin: 0; list-style-type:none; color: #CC0000;">
  {foreach from=$warning_arr item=warning}
  <li style="border: 1px solid #CC0000; background: #FFFFCC; padding: 10px; margin-bottom: 5px;" >{$warning}</li>
  {/foreach}
</ul>

如果要关闭更新提示,可以更改admin/index.php下面这几行

elseif ($_REQUEST['act'] == 'main_api')
{
    //加上下面这一行
    die();
}

因为start.htm下面有一个ajax函数,它会获取main_api这个动作的内容。如果要删除这个js函数当然更新的信息就不显示了,但是,个人认为最好不要。
Ajax.call('index.php?is_ajax=1&act=main_api','', start_api, 'GET', 'TEXT','FLASE');#p#分页标题#e#

ecshop后台要验证有没有新的版本和调用官方的API,如果不想要的话,可以去掉,去掉的方法如下,去掉ecshop后台验证,删除下面的文件的代码:
admin\shop_config.php

$spt = '<script type="text/javascript" src="http://api.ecshop.com/record.php?';
$spt .= "url=" .urlencode($ecs->url());
$spt .= "&shop_name=" .urlencode($_CFG['shop_name']);
$spt .= "&shop_title=".urlencode($_CFG['shop_title']);
$spt .= "&shop_desc=" .urlencode($_CFG['shop_desc']);
$spt .= "&shop_keywords=" .urlencode($_CFG['shop_keywords']);
$spt .= "&country=".urlencode($shop_country)."&province=".urlencode($shop_province)."&city=".urlencode($shop_city);
$spt .= "&address=" .urlencode($_CFG['shop_address']);
$spt .= "&qq=$_CFG[qq]&ww=$_CFG[ww]&ym=$_CFG[ym]&msn=$_CFG[msn]";
$spt .= "&email=$_CFG[service_email]&phone=$_CFG[service_phone]&icp=".urlencode($_CFG['icp_number']);
$spt .= "&version=".VERSION."&language=$_CFG[lang]&php_ver=" .PHP_VERSION. "&mysql_ver=" .$db->version();
$spt .= "&charset=".EC_CHARSET;
$spt .= '"></script>';
admin\templates\index.htm
</script>
<script type="text/javascript" src="http://api.ecshop.com/record.php?mod=login&url={$shop_url}"></script>

admin\templates\menu.htm
<script language="JavaScript" src="http://api.ecshop.com/menu_ext.php?charset={$charset}&lang={$help_lang}"></script>

admin\templates\start.htm
<ul style="padding:0; margin: 0; list-style-type:none; color: #CC0000;">
    {if $need_check_version}
    <script type="text/javascript" src="http://api.ecshop.com/checkver.php?ver={$ecs_version}&lang={$ecs_lang}&release={$ecs_release}&php_ver={$sys_info.php_ver}&mysql_ver={$sys_info.mysql_ver}&ocount={$order.stats.oCount}&oamount={$order.stats.oAmount}&gcount={$goods.total}&charset={$ecs_charset}"></script>
    {/if}
    {foreach from=$warning_arr item=warning}
    <li style="border: 1px solid #CC0000; background: #FFFFCC; padding: 10px; margin-bottom: 5px;" >{$warning}</li>
    {/foreach}
</ul>
<ul style="padding:0; margin: 0; list-style-type:none; color: #CC0000;">
    <script type="text/javascript" src="http://bbs.ecshop.com/notice.php?v=1&n=8&f=ul"></script>
</ul>
[/code]

这样清除缓存再试之,发现前后台的速度都是杠杠的!不会再有无故卡死现象发生了。

分享:

扫一扫在手机阅读、分享本文

请发表您的评论