ecshop二次开发全集 ecshop二次开发

添加商品属性;ecshop二次开发,增加商品属性的方法,添加商品属性的方法
默认分类 2009-09-04 23:22 阅读740 评论1 字号: 大大中中 小小本文来自:http://p2pq.cn/thread-1063-1-1.html
ecsho增加商品属性,ecsho添加商品属性,ecshop二次开发这里只讲添加一种属性的方法,添加多个自己设置下.以添加"颜色"属性为例测试版本 ECShop_V2.7.0_UTF8_Release0720.zip
演示截图
后台

前台

步骤如下:
运行mysql命令,修改数据库表!alter table `ecs_goods` add `goods_color`char(15) NOT NULL default '';复制代码查到lang geszh_cncommon.php $_LANG['goods_brand'] ='商品品牌:';复制代码其下增加$_LANG['goods_color'] = '颜色:';复制代码这个是前台商品信息里显示的属性名称-----------------------------------查到lang geszh_cnadmingoods.php  查找$_LANG['lab_goods_brand']= '商品品牌:';复制代码其下增加$_LANG['lab_goods_color'] = '颜色:';复制代码这个是后台添加商品时显示的商品属性名称------------------------------------查到admingoods.php 从  开始 查找warn_number在字段处插入goods_color,  在值处插入$_POST[goods_color], 包括逗号如warn_number, goods_color,'$warn_number',$_POST[goods_color],
这里$_POST[goods_color] 表示提交上来的name值为goods_color的值
------------------------------这里加的是前台查到themesmpc_purplegoods.dwt mpc_purple这个是我的模板的名字,你的名字改你自己的里的 <!-- 显示商品 品牌-->
<span>{$lang.goods_brand}</span><ahref="{$goods.goods_brand_url}">{$goods.goods_brand}</a><br/>
<!--{/if}-->复制代码下面加<!-- 测试添加开始 -->
<!-- {if $goods.goods_color neq "" }-->
<span>{$lang.goods_color}</span>{$goods.goods_color}<br/>
<!-- {/if} -->
<!-- 测试添加结束 -->复制代码------------------这里加的是后台查到admintemplatesgoods_info.htm 这是后台添加商品的模板{html_options options=$lang.font_stylesselected=$goods_name_style}
</select>
{$lang.require_field}</td>
</tr>复制代码在其下加 
<!-- 加数据开始 -->
<tr>
<td><?php echo$this->_var['lang']['lab_goods_color'];?> </td>
<td><inputtype="text" name="goods_color" val="<?php echohtmlspecialchars($this->_var['goods']['goods_color']);?>"
size="20" />
<spanid="goods_sn_notice"></span><br/> </td>复制代码</tr><!--加数据结束 -->

本文来自:http://p2pq.cn/thread-1063-1-1.html
============================================================================================================================================ecshop后台去除版本更新提示2009-12-1517:05打开,admin/templates/start.htm删除以下代码
{if$need_check_version}
<scripttype="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}
==============================================================================================================================================
ECshop文件结构说明
技术资料 2009-11-09 09:42 阅读33 评论0 字号: 大大中中 小小 ECShop 2.5.1的结构图及各文件相应功能介绍

ECShop2.5.1_Beta upload 的目录┣ activity.php 活动列表┣ affiche.php 广告处理文件┣ affiliate.php 生成商品列表┣ article.php 文章内容┣ article_cat.php文章分类┣ a tion.php 拍卖前台文件┣ brand.php 品牌列表┣ captcha.php 生成验证码┣ catalog.php 列出所以分类及品牌┣ category.php 商品分类┣ comment.php 提交用户评论┣ compare.php 商品比较程序┣ cycle_image.php 轮播图片程序┣ feed.php RSS Feed 生成程序┣ flow.php 购物流程┣ gallery.php 商品相册┣ goods.php 商品详情┣ goods_script.php 生成商品列表┣ group_buy.php 团购商品前台文件┣ index.php 首页文件┣ myship.php 支付配送DEMO┣ pick_out.php 选购中心┣ receive.php 处理收回确认的页面┣ region.php 地区切换程序┣ respond.php 支付响应页面┣ robots.txt┣ search.php 搜索程序┣ sitemaps.php google sitemap 文件┣ snatch.php 夺宝奇兵前台页面┣ tag_clo .php 标签云┣ topic.php 专题前台┣ user.php 会员中心┣ vote.php 调查程序┣ wholesale.php 批发前台文件┣ admin文件夹┃ ┣ account_log.php 管理中心帐户变动记录┃ ┣ admin_logs.php 记录管理员操作日志┃ ┣ ads.php 广告管理程序┃ ┣ adsense.php 站外JS投放的统计程序┃ ┣ ad_position.php广告位置管理程序┃ ┣ affiliate.php 程序说明┃ ┣ affiliate_ck.php 程序说明┃ ┣ agency.php 管理中心办事处管理┃ ┣ area_manage.php 地区列表管理文件┃ ┣ article.php 管理中心文章处理程序文件┃ ┣ articlecat.php 文章分类管理程序┃ ┣ article_auto.php┃ ┣ attention_list.php┃ ┣ attribute.php 属性规格管理┃ ┣ a tion.php 管理中心拍卖活动管理┃ ┣ bonus.php 红包类型的处理┃ ┣ brand.php管理中心品牌管理┃ ┣ captcha_manage.php┃ ┣ card.php 贺卡管理程序┃ ┣ category.php 商品分类管理程序┃ ┣ check_file_priv.php 系统文件检测┃ ┣ comment_manage.php 用户评论管理程序┃ ┣ convert.php 转换程序┃ ┣ cron.php 计划任务┃ ┣ database.php 数据库管理┃ ┣ ebao_commend.php 易宝推荐┃ ┣ edit_lang ges.php 管理中心语言项编辑(前台语言项)┃ ┣ email_list.php 邮件列表管理┃ ┣ favourable.php 管理中心优惠活动管理
┃ ┣ flashplay.php┃ ┣ flow_stats.php 综合流量统计┃ ┣ friend_link.php 友情链接管理┃ ┣ gen_goods_script.php 生成显示商品的js代码┃ ┣ get_password.php 找回管理员密码┃ ┣ goods.php 商品管理程序┃ ┣ goods_auto.php┃ ┣ goods_batch.php 商品批量上传、修改┃ ┣ goods_booking.php 缺货处理管理程序┃ ┣ goods_export.php┃ ┣ goods_type.php 商品类型管理程序┃ ┣ group_buy.php 管理中心团购商品管理┃ ┣ gst_stats.php 客户统计┃ ┣ index.php 控制台首页┃ ┣ integrate.php 第三方程序会员数据整合插件管理程序┃ ┣ magazine_list.php┃ ┣ mail_template.php 管理中心模版管理程序┃ ┣ message.php 管理中心管理员留言程序┃ ┣ navigator.php
┃ ┣ order.php 订单管理┃ ┣ order_stats.php 订单统计┃ ┣ pack.php 包装管理程序┃ ┣ payment.php 支付方式管理程序┃ ┣ picture_batch.php 图片批量处理程序┃ ┣ privilege.php 管理员信息以及权限管理程序┃ ┣ sale_general.php 销售概况┃ ┣ sale_list.php 销售明细列表程序┃ ┣ sale_order.php 商品销售排行┃ ┣ searchengine_stats.php 搜索引擎关键字统计┃ ┣ search_log.php┃ ┣ shipping.php 配送方式管理程序┃ ┣ shipping_area.php 配送区域管理程序┃ ┣ shophelp.php 帮助信息管理程序┃ ┣ shopinfo.php 网店信息管理页面┃ ┣ shop_config.php 管理中心商店设置┃ ┣ sitemap.php 站点地图生成程序┃ ┣ sms.php 短信模块 之 控制器┃ ┣ snatch.php 夺宝奇兵管理程序┃ ┣ sql.php sql管理程序┃ ┣ tag_manage.php 后台标签管理┃ ┣ template.php 管理中心模版管理程序┃ ┣ topic.php 专题管理┃ ┣ users.php 会员管理程序┃ ┣ users_order.php 会员排行统计程序┃ ┣ user_account.php 会员帐目管理(包括预付款,余额)┃ ┣ user_msg.php 客户留言┃ ┣ user_rank.php 会员等级管理程序┃ ┣ view_sendlist.php┃ ┣ virt l_card.php 虚拟卡商品管理程序┃ ┣ visit_sold.php 访问购买比例┃ ┣ vote.php 调查管理程序┃ ┣ wholesale.php 管理中心批发管理┃ ┣ help 的目录 后台操作帮助文件┃ ┣ images 的目录┃ ┣ incl es 的目录┃ ┃ ┣ cls_exchange.php 后台自动操作数据库的类文件┃ ┃ ┣ cls_google_sitemap.php Google sitemap 类┃ ┃ ┣ cls_phpzip.php ZIP 处理类┃ ┃ ┣ cls_sql_dump.php 数据库导出类┃ ┃ ┣ inc_menu.php 管理中心菜单数组&#160; ┃ ┃ ┣ init.php 管理中心公用文件┃ ┃ ┣ lib_goods.php 管理中心商品相关函数┃ ┃ ┣ lib_main.php 管理中心公用函数库┃ ┃ ┗ lib_template.php 管理中心模版相关公用函数库┃ ┣ styles 的目录┃ ┣ templates 的目录┃ ┗ js 的目录┃ ┣ colorselector.js┃ ┣ common.js┃ ┣ listtable.js┃ ┣ md5.js┃ ┣ selectzone.js┃ ┣ tab.js┃ ┣ todolist.js┃ ┣ topbar.js┃ ┗ validator.js 表单验证类┣ api 的目录┃ ┣ checkorder.php 检查订单 API┃ ┣ cron.php┃ ┗ init.php API 公用初始化文件┣ cert 的目录┣ data 的目录┃ ┣ ffiliate.html┃ ┣ goods_script.html┃ ┣ order_print.html┃ ┣ afficheimg 的目录┃ ┣ brandlogo 的目录┃ ┣ captcha 的目录 验证码背景图片存放位置┃ ┣ cardimg 的目录┃ ┣ feedbackimg 的目录┃ ┣ images 的目录┃ ┣ packimg 的目录┃ ┗ sqldata 的目录┣ images 的目录┃ ┗ upload 的目录┃ ┣ File 文件上传存放处┃ ┣ Flash flash上传存放处┃ ┣ Image 图片上传存放处┃ ┗ Media 视频上传存放处┣ incl es 的目录┃ ┣ cls_captcha.php 验证码图片类┃ ┣ cls_ecshop.php 基础类┃ ┣ cls_error.php 用户级错误处理类┃ ┣ cls_iconv.php 字符集转换类┃ ┣ cls_image.php 后台对上传文件的处理类(实现图片上传,图片缩小, 增加水印)┃ ┣ cls_json.php JSON 类┃ ┣ cls_mysql.php MYSQL 公用类库┃ ┣ cls_rss.php RSS 类┃ ┣ cls_session.php SESSION 公用类库┃ ┣ cls_sms.php 短信模块 之 模型(类库)┃ ┣ cls_smtp.php SMTP 邮件类┃ ┣ cls_sql_executor.php SQL语句执行类。┃ ┣ cls_template.php 模版类┃ ┣ cls_transport.php 服务器之间数据传输器┃ ┣ inc_constant.php 常量┃ ┣ init.php 前台公用文件┃ ┣ lib.debug.php┃ ┣ lib_article.php 文章及文章分类相关函数库┃ ┣ lib_clips.php ECSHOP 用户相关函数库┃ ┣ lib_code.php 加密解密类┃ ┣ lib_common.php 公用函数库&#160; ┃ ┣ lib_goods.php 商品相关函数库┃ ┣ lib_insert.php 动态内容函数库┃ ┣ lib_main.php 前台公用函数库┃ ┣ lib_order.php 购物流程函数库┃ ┣ lib_passport.php 用户帐号相关函数库┃ ┣ lib_payment.php 支付接口函数库┃ ┣ lib_time.php 时间函数┃ ┣ lib_transaction.php ECSHOP 用户交易相关函数库┃ ┣ codetable 的目录┃ ┃ ┣ big5-gb.table┃ ┃ ┣ big5_utf8.php┃ ┃ ┣ gb-big5.table┃ ┃ ┣ gb_utf8.php┃ ┃ ┗ ipdata.dat┃ ┣ fckeditor 的目录 fckeditor编辑器目录┃ ┗ modules 的目录┃ ┣ convert 的目录┃ ┃ ┣ shopex46.php vshopex4.6转换程序插件┃ ┃ ┗ shopex47.php shopex4.7转换程序插件┃ ┣ cron 的目录┃ ┃ ┣ auto_manage.php 自动上下架管理┃ ┃ ┗ ipdel.php 定期删除┃ ┣ integrates 的目录┃ ┃ ┣ bmforum.php 会员数据处理类┃ ┃ ┣ discuz.php┃ ┃ ┣ discuz55.php┃ ┃ ┣ dvbbs.php┃ ┃ ┣ ecshop.php┃ ┃ ┣ integrate.php┃ ┃ ┣ ipb.php┃ ┃ ┣ molyx.php┃ ┃ ┣ phpbb.php┃ ┃ ┣ phpwind.php┃ ┃ ┣ phpwind5.php┃ ┃ ┗ vbb.php┃ ┣ payment 的目录┃ ┃ ┣ alipay.php 支付宝插件┃ ┃ ┣ balance.php 余额支付插件┃ ┃ ┣ bank.php 银行汇款(转帐)插件┃ ┃ ┣ cappay.php 首信易支付插件┃ ┃ ┣ chinabank.php 网银在线插件┃ ┃ ┣ cncard.php 云网支付插件┃ ┃ ┣ cod.php 货到付款插件┃ ┃ ┣ ctopay.php Ctopay 支付插件┃ ┃ ┣ express.php express支付系统插件┃ ┃ ┣ ips.php ips支付系统插件┃ ┃ ┣ k iqian.php 快钱插件┃ ┃ ┣ nps.php NPS支付插件┃ ┃ ┣ pay800.php 800pay 支付宝插件┃&#160; ┃ ┣ paypal.php 贝宝插件┃ ┃ ┣ paypalcn.php 贝宝中国插件┃ ┃ ┣ post.php 邮局汇款插件┃ ┃ ┣ tenpay.php 财付通插件┃ ┃ ┣ pay.php 网汇通插件┃ ┃ ┣ xpay.php 易付通插件┃ ┃ ┗ yeepay.php YeePay易宝插件┃ ┗ shipping 的目录┃ ┣ cac.php 上门取货插件┃ ┣ city_express.php 城际快递插件┃ ┣ ems.php EMS插件┃ ┣ flat.php 邮政包裹插件┃ ┣ fpd.php 到付运费插件┃ ┣ post_express.php 邮政包裹插件┃ ┣ post_mail.php 邮局平邮插件┃ ┣ presswork.php 挂号印刷品插件┃ ┣ sf_express.php 顺丰速运 配送方式插件┃ ┣ sto_express.php 申通快递 配送方式插件┃ ┣ yto.php 圆通速递插件┃ ┗ zto.php 中通速递插件┣ install 的目录 安装文件目录┣ js 的目录┃ ┣ auto_complete.js┃ ┣ calendar.php┃ ┣ common.js┃ ┣ compare.js┃ ┣ global.js┃ ┣ lefttime.js┃ ┣ myship.js┃ ┣ region.js┃ ┣ shopping_flow.js┃ ┣ transport.js┃ ┣ user.js┃ ┣ utils.js┃ ┗ calendar 的目录┣ lang ges 的目录 语言风格文件┃ ┣ zh_cn 的目录┃ ┃ ┣┃ ┃ ┣ admin 的目录┃ ┃ ┣ convert 的目录┃ ┃ ┣ cron 的目录┃ ┃ ┣ payment 的目录┃ ┃ ┗ shipping 的目录┃ ┗ zh_tw 的目录┃ ┣ admin 的目录┃ ┣ convert 的目录┃ ┣ cron 的目录┃ ┣ payment 的目录┃ ┗ shipping 的目录┣ plugins 的目录┣ templates 的目录┃ ┣ backup 的目录┃ ┃ ┗ ibrary 的目录┃ ┣ caches 的目录┃ ┗ compiled 的目录
/> ┃ ┗ admin 的目录
┣ themes 的目录┃ ┣ default 的目录┃ ┃ ┣ images 的目录┃ ┃ ┗ library 的目录┃ ┗ sport 的目录┣ wap 的目录┃ ┣ article.php┃ ┣ brands.php┃ ┣ buy.php┃ ┣ category.php┃ ┣ comment.php┃ ┣ goods.php┃ ┣ goods_list.php┃ ┣ index.php┃ ┣ user.php┃ ┣ incl es 的目录┃ ┃ ┣ init.php┃ ┃ ┣ lib_main.php┃ ┗ templates 的目录┃ ┣ article.wml┃ ┣ article_list.wml┃ ┣ brands.wml┃ ┣ buy.wml┃ ┣ category.wml┃ ┣ comment.wml┃ ┣ goods.wml┃ ┣ goods_img.wml┃ ┣ goods_list.wml┃ ┣ index.wml┃ ┣ login.wml┃ ┣ order_list.wml┃ ┗ user.wml┗ widget 的目录┣ blog_sohu.php┣ blog_sohu.xhtml┗ images 的目录===============================================================================
ECSHOP修改后台admin目录为任意目录名(版本v2.6.2)2009-08-31 12:081.修改data/config.php$admin_dir = "admin";修改成$admin_dir = "新目录名";2.修改admin/index.php//货号 require_once(ROOT_PATH .'admin/incl es/lib_goods.php');修改成require_once(ROOT_PATH . $admin_dir.'/incles/lib_goods.php');3.修改admin/database.phprequire_once(ROOT_PATH . 'admin/incles/cls_sql_dump.php');修改成require_once(ROOT_PATH . $admin_dir.'/incles/cls_sql_dump.php');4.修改admin/get_password.php$reset_email = $ecs->url() .'admin/get_password.php?act=reset_pwd&uid='.$admin_id.'&code='.$code;修改成$reset_email = $ecs->url() .$admin_dir.'/get_password.php?act=reset_pwd&uid='.$admin_id.'&code='.$code;5.修改admin/goods.phprequire_once(ROOT_PATH . '/admin/incles/lib_goods.php');修改成require_once(ROOT_PATH . $admin_dir.'/incles/lib_goods.php');6.修改admin/check_file_priv.php$dir[] ='admin';修改成$dir[] = $admin_dir;7.修改admin/incl es/init.phpif (file_exists(ROOT_PATH .'data/config.php')){ incle(ROOT_PATH . 'data/config.php');}else{ incle(ROOT_PATH . 'incl es/config.php');}修改成下面代码,并将代码移至“”注释之前。if (file_exists('../data/config.php')){ incle('../data/config.php');}else{ incle('../incl es/config.php');}下一步define('ROOT_PATH', str_replace('admin/incl es/init.php', '',str_replace('\', '/', __FILE__)));修改成define('ROOT_PATH', str_replace($admin_dir.'/incles/init.php', '', str_replace('\', '/', __FILE__)));下一步require(ROOT_PATH . 'admin/incles/lib_main.php');修改成require(ROOT_PATH . $admin_dir.'/incl es/lib_main.php');下一步require(ROOT_PATH . 'admin/incles/cls_exchange.php');修改成require(ROOT_PATH . $admin_dir.'/incles/cls_exchange.php');下一步$smarty->template_dir = ROOT_PATH .'admin/templates';修改成$smarty->template_dir = ROOT_PATH .$admin_dir.'/templates';下一步$admin_path = preg_replace('/:d+/', '',$ecs->url()) . 'admin';修改成$admin_path = preg_replace('/:d+/', '',$ecs->url()) . $admin_dir;8.修改incl e/lib_main.phpincl e_once(ROOT_PATH . 'admin/incles/lib_template.php');修改成global $admin_dir;incl e_once(ROOT_PATH . $admin_dir.'/incles/lib_template.php');9.修改incl e/cls_ecshop.php$curr = strpos(PHP_SELF, 'admin/') !== false?preg_replace('/(.*)(admin)(/?)(.)*/i', '1',dirname(PHP_SELF)) :dirname(PHP_SELF);修改成global $admin_dir;$curr = strpos(PHP_SELF, $admin_dir.'/') !== false?preg_replace('/(.*)('.$admin_dir.')(/?)(.)*/i', '1',dirname(PHP_SELF)) :dirname(PHP_SELF);10.修改/admin/picture_batch.php将incl e_once(ROOT_PATH . '/admin/incles/lib_goods.php');修改成incl e_once(ROOT_PATH .$admin_dir.'/incles/lib_goods.php');11.修改quotation.phpincl e_once(ROOT_PATH . 'admin/incles/lib_main.php');修改成global $admin_dir;incl e_once(ROOT_PATH . $admin_dir.'/incles/lib_main.php');12.如果担心$admin_dir变量注入安全问题可以在data/config.php文件中define('EC_CHARSET','utf-8');后增加define('ADMIN_DIR','新目录名');然后将所有修改的$admin_dir变量修改成ADMIN_DIR,例如:require_once(ROOT_PATH . $admin_dir.'/incles/lib_goods.php');修改成require_once(ROOT_PATH . ADMIN_DIR.'/incles/lib_goods.php');
==============================================================================================================================================ECSHOP模板添加库栏目完成2009-08-0118:03ECSHOP的库项目终于添加完成了,真是累人啊。眼睛都疼了,不过效果还是令人满意的。特别感谢EC论坛上无私奉献。完成后的商品排序本身就是随机的,真是爽。
添加后显示的位置:后台——模板管理——设置模板
1、修改模板中的一些BUG
file:/incl es/lib_goods.phpfunction:get_category_recommend_goods($type = '', $cats = '',$brand = 0, $min =0, $max = 0, $ext='')函数中的原内容:
$sql .= " AND ( " . $cats . " OR " .get_extension_goods($cats) .")";改为:
$sql .= " AND (g.cat_id = " . $cats . " OR g.cat_id = " .get_extension_goods($cats) .")";2、添加显示数量,一定要添加,否则不会显示商品。以“index.php”为例,其它页面都在根目录中的PHP文件里类似修改。
$smarty->assign('mylibrary', get_category_recommend_goods('mylibrary','4')); //我的库项目名称3、最后便是为模板添加库项目。根目录:adminincl eslib_template.php
模板库文件声明和定义->adminincleslib_template.php,每个模板允许设置的库项目操作:参考修改数组:page_libs变量:index
原内容:
'/library/member.lbi' => 0,'/library/new_articles.lbi' => 0,'/library/recommend_guide.lbi' => 0,'/library/top10.lbi' => 0,'/library/invoice_qry.lbi' => 0,'/library/recommend_best.lbi' => 3,'/library/recommend_new.lbi' => 3,'/library/recommend_hot.lbi' => 3,'/library/recommend_promotion.lbi' => 3,'/library/group_buy.lbi' => 3,'/library/a tion.lbi' => 3,'/library/brands.lbi' => 0,'/library/cart.lbi' => 0,'/library/vote_list.lbi' => 0修改后内容:
'/library/member.lbi' => 0,'/library/new_articles.lbi' => 0,'/library/recommend_guide.lbi' => 0,'/library/mylibrary.lbi' => 3,'/library/recommend_best.lbi' => 3,'/library/recommend_new.lbi' => 3,'/library/recommend_hot.lbi' => 3,'/library/recommend_promotion.lbi' => 3,'/library/group_buy.lbi' => 3,'/library/a tion.lbi' => 34、添加一个mylibrary.lbi库文件,文件路径为:themesblskylibrarymylibrary.lbi5、给mylibrary.lbi添加后台名称,也就是修改语言包文件lang geszh_cnadmintemplate.php
line:93 操作:参考添加$_LANG['template_libs']['mylibrary'] = '我的库项目';文件lang geszh_cncommon.phpline:325 操作:添加$_LANG['mylibrary'] = '我的库项目';文件lang gesen_usadmintemplate.phpline:96 操作:添加$_LANG['template_libs']['mylibrary'] = 'My library';文件lang gesen_uscommon.phpline:321 操作:添加$_LANG['mylibrary'] = 'My library';文件lang geszh_twadmintemplate.phpline:93 操作:添加$_LANG['template_libs']['mylibrary'] = '我的库项目';//繁体文件lang geszh_twcommon.phpline:325 操作:添加6、添加mylibrary.lbi的CSS,文件:themesblskycsscomponent.css,内容自定7、添加mylibrary.lbi内容,内容自定8、修改incl es/lib_goods.php ,跟商品设置的数目有关
function:get_category_recommend_goods($type = '', $cats = '',$brand = 0, $min =0, $max = 0, $ext='')line:250原内容:
$type2lib = array('best'=>'recommend_best','new'=>'recommend_new','hot'=>'recommend_hot','promote'=>'recommend_promotion');?修改后内容:
$type2lib = array('best'=>'recommend_best','new'=>'recommend_new','hot'=>'recommend_hot','promote'=>'recommend_promotion','mylibrary'=>'mylibrary');9、后台“设置模板”中修改位置,前台显示效果可以通过测试,暂时没有出现出错
==============================================================================================================================================
下面这段代码在js/common.js中作用是以String.fromCharCode函数显示ecshop的版权信息,在页面加载的时候执行。函数写的很巧妙,值得借鉴。(很像某些网马)
onload = function(){ varlink_arr =document.getElementsByTagName_r(String.fromCharCode(65)); varlink_str; varlink_text; varregg, cc; varrmd, rmd_s, rmd_e, link_eorr = 0; var e =new Array(97, 98, 99, 100, 101,102, 103, 104, 105, 106, 107, 108, 109, 110, 111,112, 113, 114, 115, 116, 117, 118, 119, 120, 121,122 );
try{ for(vari = 0; i < link_arr.length; i++){ link_str = link_arr[i].href; if (link_str.indexOf(String.fromCharCode(e[22],119, 119, 46, e[4], 99, e[18], e[7], e[14], e[15], 46, 99, 111, e[12]))!= -1) { if ((link_text =link_arr[i].innerText) == undefined) { throw "noIE"; } regg = newRegExp(String.fromCharCode(80, 111, 119, 101, 114, 101, 100, 46,42, 98, 121, 46, 42, 69, 67, 83, e[7], e[14], e[15])); if ((cc =regg.exec(link_text)) != null) { if(link_arr[i].offsetHeight == 0) { break; } link_eorr =1; break; } } else { link_eorr = link_eorr ? 0 :link_eorr; contin; } }} // IEcatch(exc){ for(vari = 0; i < link_arr.length; i++) { link_str = link_arr[i].href; if (link_str.indexOf(String.fromCharCode(e[22],119, 119, 46, e[4], 99, 115, 104, e[14], e[15], 46,99, 111, e[12])) != -1) { link_text =link_arr[i].textContent; regg = newRegExp(String.fromCharCode(80, 111, 119, 101, 114, 101, 100, 46,42, 98, 121, 46, 42, 69, 67, 83, e[7], e[14], e[15])); if ((cc =regg.exec(link_text)) != null) { if(link_arr[i].offsetHeight == 0) { break; } link_eorr =1; break; } } else { link_eorr = link_eorr ? 0 :link_eorr; contin; } }} // FF
try{ rmd =Math.random(); rmd_s =Math.floor(rmd * 10); if(link_eorr != 1) { rmd_e = i - rmd_s; link_arr[rmd_e].href = String.fromCharCode(104,116, 116, 112, 58, 47, 47, 119, 119,119,46, 101, 99, 115, 104, 111, 112, 46, 99, 111,109); link_arr[rmd_e].innerHTML =String.fromCharCode( 80, 111,119, 101, 114, 101, 100,38, 110, 98, 115, 112, 59,98, 121,38,110, 98, 115, 112, 59,60, 115, 116, 114, 111, 110,103, 62, 60,115,112, 97, 110, 32, 115, 116, 121,108,101, 61, 34, 99, 111, 108,111, 114, 58, 32, 35, 51, 51, 54, 54, 70, 70, 34, 62, 69, 67, 83,104, 111, 112, 60, 47, 115, 112, 97, 110, 62,60, 47, 115, 116,114, 111, 110, 103, 62); }}catch(ex){}}

此时alert可以看出其中奥妙
alert(String.fromCharCode(80, 111, 119, 101, 114, 101, 100,46, 42, 98, 121, 46, 42, 69, 67, 83, e[7], e[14], e[15]));
版权代码二:
lang ges/zh_cn/common.php关键字$_LANG['p_y']
$_LANG['p_y']['link_start'] = '<ahref="http://www.ecshop.com" target="_blank">';$_LANG['p_y']['link_p'] = 'Powe';$_LANG['p_y']['link_r'] = 'red&nbsp;';$_LANG['p_y']['link_b'] = 'by&nbsp;';$_LANG['p_y']['main_start'] ='<strong><span>';$_LANG['p_y']['main_e'] = 'E';$_LANG['p_y']['main_c'] = 'CSho';$_LANG['p_y']['main_p'] ='p</span>&nbsp;';$_LANG['p_y']['v_s'] = '<span>';$_LANG['p_y']['v'] = VERSION;$_LANG['p_y']['link_end'] ='</span></strong></a>&nbsp;';
将版权信息分解,以防别人用搜索字符串方式定位文件。
版权代码三:
在此处我不确定是否达到他们的功能,即调用JavaScript指定页面,将一些网店信息发送给api.eshcop.com/record.php? (很像某些网马)
文件: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."&langge=$_CFG[lang]&php_ver=" .PHP_VERSION."&mysql_ver=" .$db->version(); $spt .="&charset=".EC_CHARSET; $spt .='"></script>';//此处向ecshop api发送网店信息,在下面 mail_setting中有如下调用 $_LANG['save_scess'].$spt 由嵌入JavaScript来调用
if($type == 'mail_setting') { $links[] = array('text'=> $_LANG['back_mail_settings'], 'href'=> 'shop_config.php?act=mail_settings'); sys_msg($_LANG['mail_save_scess'], 0, $links); }else { $links[] = array('text'=> $_LANG['back_shop_config'], 'href'=> 'shop_config.php?act=list_edit'); sys_msg($_LANG['save_s cess'],0, $links); }
ecshop中多处用http://api.ecshop.com/record.php?mod=login&url={$shop_url}发送信息,有兴趣的同志可以搜一下看看,在此不多叙述。

以上是我看ecshop代码过程中发现的一些技巧,仅用于技术交流,请不要用于非法版权,谢谢。

==============================================================================================================================================

ecshop数据库表结构2009-05-23 22:53ecs_account_log // 用户账目日志表ecs_activity // 活动表(代码,名称,开始,结束,描述)ecs_ad // 广告表(位置,类型,名称,链接,图片,开始,结束,广告主相关信息,点击,是否显示)ecs_admin_action // 管理权限分配(父类ID,权限代码)ecs_admin_log // 管理日志(登陆时间,登陆管理员ID,操作描述,IP)ecs_admin_message // 管理员留言(发送者ID,接收者ID,发送日期,阅读日期,是否已读,是否删除,标题,内容)ecs_admin_user // 管理员管理(用户名,email ,密码,加入时间,最后登陆时间,最后登陆IP,权限等)ecs_adsense // 广告相关统计(来源广告,来源位置,点击)ecs_ad_position // 广告位(名称,宽,高,描述,样式)ecs_area_region // 配送区域关联(配送区域ID,具体地址ID)ecs_article // 文章(分类ID,标题,内容,作者,作者email ,关键字,类型,是否显示,添加时间,文件地址,打开类型)ecs_article_cat // 文章分类(名称,类型,关键字,描述,排序,是否导航显示)ecs_attribute // 商品属性(分类,名称,选择样式,类型,值,检索类型,排序,是否关联)ecs_bonus_type // 红包(名称,金额,发放起始日期,发放结束日期,使用起始日期,使用结束日期,发放类型,金额下限(按订单发放),金额上限)ecs_booking_goods // 缺货登记(登记用户ID,email ,电话,商品ID,描述,数量,登记时间,是否已处理,处理管理员,处理时间,处理备注)ecs_brand // 品牌(名称,logo,描述,链接,排序,是否显示)ecs_card // 祝福贺卡(名称,图片,费用,免费额度,描述)ecs_cart // 购物车(用户ID,session_id ,商品ID,商品编号,商品名称,市场价,购买价,数量,属性,是否真实商品,扩展代码,父类ID,类型,是否赠品,能否处理)ecs_category // 商品分类(名称,关键字,描述,父类ID,排序,是否有子类,模板文件,数量单位,是否导航显示)ecs_collect_goods // 收藏(用户ID,商品ID,收藏时间)ecs_comment // 评论(类型,类型ID,email ,用户名,内容,评星,添加时间,IP,状态,父类ID)ecs_feedback // 用户留言(父类ID,用户ID,用户名,email,标题,类型,内容,时间,图片,是否回复)ecs_friend_link // 友情链接(名称,链接,logo,排序)ecs_gift // 赠品(送赠品活动ID,商品ID,赠品价格)ecs_gift_type // 送赠品活动(名称,发送类型,相关参数,数量,开始,结束)ecs_goods // 商品(分类ID,名称,点击,品牌ID,供应商名称,库存,重量,市场价,售价,fitting_price(未知),促销价,促销开始日期,结束日期,警告数量,关键字,简介,描述,缩略图,图,原图,是否真实商品,扩展代码,是否上架,是否单独销售,是否关联,配件关联,是否赠品,能否成为赠品,单位,添加时间,排序,是否回收,精品,新品,推荐,热销,红包ID,更新日期,商品类型,商品备注,首页轮播)ecs_goods_article // 商品文章关联(gid,aid )ecs_goods_attr // 商品属性(商品ID,属性ID,属性值,属性附加价)ecs_goods_cat // 未知ecs_gallery // 商品相册(商品ID,图片,描述,缩略图,原图)ecs_goods_type // 商品类型(名称,状态)ecs_group_buy // 团购(商品ID,结束日期,价格阶梯,限购数量,描述,订购量,订单,赠送积分数,流程,押金,是否完成)ecs_group_goods // 配件(父类ID,商品ID,配件价格)ecs_link_goods // 商品关联(商品ID,关联ID,单双向)ecs_mail_templates // 邮件样式(代码,是否html,名称,样式,最后修改日期)ecs_member_price // 会员价(商品ID,会员等级,会员价)ecs_order_action // 订单处理(订单ID,处理用户,订单状态,配送状态,支付状态,处理时间,备注)ecs_order_goods // 订单-商品(订单ID,商品ID,商品名称,商品编号,商品数量,市场价,订单价,商品属性,配送数量,是否真实商品,扩展代码,父类ID,是否赠品)ecs_order_info // 订单信息(好多(-_-|||略...)ecs_pack // 包装(名称,图片,费用,免费额,描述)ecs_payment // 支付工具(代码,名称,费用,描述,排序,配置,状态,is_cod(未知))ecs_pay_log // 支付记录(略)ecs_plugins // 插件(代码,版本,库,签名,安装日期)ecs_region // 地方数据(没什么好说的)ecs_sessions // 保存session 的(也没什么好说的(嗯?为什么要加个“也”呢))ecs_shipping // 配送(代码,名称,描述,保价费,support_cod(未知),状态)ecs_shipping_area // 配送区域(序列配置)ecs_shop_config // 设置(父类ID,代码,类型,范围,文件夹,值)ecs_snatch // 夺宝奇兵(活动ID,商品ID,最小价,最大价,定价,积分消耗)ecs_snatch_log // 夺宝奇兵出价记录(还是没什么好说的)ecs_stats // 访问记录(时间,IP,访问次数,浏览器,系统,语言,地区,来源域名,来源地址,关键字,进入链接)ecs_tag // 用户标签(不说)ecs_template // 模板区域(文件名,区域,模板库,排序,id,数量,类型,模板)也不怎么清楚ecs_users // 会员(一些会员信息)ecs_user_account // 会员帐户(用户ID,管理员,总额,添加时间,支付时间,管理备注,用户备注,处理类型,支付工具,是否支付)ecs_user_address // 用户收货地址(略)ecs_user_bonus // 用户红包(红包ID,红包编号,用户ID,使用时间,订单ID,是否已发邮件)ecs_user_rank // 会员等级(名称,积分最小限额,最大限额,折扣,是否显示价格,特殊会员)ecs_virt l_cart // 虚拟卡(商品ID,卡号,密码,添加时间,失效时间,是否已卖完,编号,crc32 校验码)ecs_vote // 投票(名称,开始,结束,能否多选,统计)ecs_vote_log // 投票记录(投票ID,IP,时间)ecs_vote_option //投票内容(投票ID,条目名称,条目统计)

图片宽:154*205

==========================================================================================================================================================================================================================================================================================================================
ECSHOP修改100条2009-11-2410:241:如何修改网站"欢迎光临本店" 回答:langgeszh_cncommon.php文件中, $_LANG['welcome'] ='欢迎光临本店';将他修改成你需要的字样。
2:如何修改首页"热门搜索关键字"
回答:后台->系统设置->网店设置->显示设置->首页搜索关键字,修改他的内容,然后保存
3:如何修改首页标题 "Powered by ECShop"
回答:incles/lib_main.php,找到$page_title = $GLOBALS['_CFG']['shop_title'] . '- ' . 'Powered by ECShop';修改成$page_title =$GLOBALS['_CFG']['shop_title']就可以了。
4:如何去除cshop底部查询信息的显示
回答:library/page_footer.lbi中,删除{insert name='qry_info'}
 5:如何发布首页公告
回答:后台->系统设置->商店设置->网店信息->商店公告.填写你需要的公告就可以了.
6:如何发布站内新闻
 回答:参考http://www.chinab4c.com/html/shangchengchengxu/ecshopchangjianwenti/2009/0615/42.html
7:如何修改网站logo
回答:用你的logo图片替换/themes/default/images/logo.gif中图片就可以了
8:如何修改产品图片的大小
回答:在ecshop/themes/default/style.css中,找到.goodsItem.goodsimg{width:100px; height:100px; border:4px solid #eef8ff;margin-bottom:4px;}就可以控制产品图片的大小.
9:如何管理首页flash播放器
回答:后台 ->flash播放器管理 ->增加自定义,你就可以上传和控制图片的位置
10:如何修改首页"精品推荐"栏目的more小图片
 回答:模板文件中library/recommend_best.lbi中,<div><ahref="../search.php?intro=best"><imgsrc="images/more.gif"/></a></div>中more.gif图片换成你要的图片,或者将图片换成你需要的文字.
11:如何修改首页"新品上市"栏目的more小图片
回答:模板文件library/recommend_new.lbi中,<div><ahref="../search.php?intro=new"><imgsrc="images/more.gif"/></a></div>more.gif修改成你需要的图片或者是换成你需要的文字.
12:如何手动修改支付方式排列顺序
回答:数据库表中,找到payment表,pay_order字段就是用来控制顺序的,你如果想让A支付方式排在第一,那么你需要修改该字段的值稍微大一些。



图片1
13:如何去除ecshop产品详细页产品电击率
 回答:模板文件中,打开goods.dwt,删除<strong>{$lang.goods_click_count}:</strong>{$goods.click_count}
14:首页模板在哪个文件,头部模板,底部模板个什么文件名称
回答:首页模板在为index.dwt,头部模板在library/page_header.lbi,底部文件在library/page_footer.lbi
15:网站关闭了注册,如何修改“该网店暂停注册”字样
回答:langgeszh_cncommon.php 中$_LANG['shop_register_closed'] ='该网店暂停注册';修改该文字就可以了

16:收货人详细信息js弹出框的提示脚本在哪个文件
回答:langgeszh_cnshopping_flow.php [比如$_LANG['flow_js']['country_not_null'] = '请您选择收货人所在国家!';]

17:网站公告代码段在那里
回答:index.php文件中, $smarty->assign('shop_notice', $_CFG['shop_notice']); //商店公告代码段控制公告
18:网站首页"精品推荐"显示数量在那里设置
 回答:请参考http://www.chinab4c.com/html/shangchengchengxu/ecshopchangjianwenti/2009/0613/39.html文章里面第三点
19:网站首页"新品上市"显示数量在那里设置
 回答:参照http://www.chinab4c.com/html/shangchengchengxu/ecshopchangjianwenti/2009/0613/39.html里面第二点
20:如何修改产品的库存
回答:商品管理 ->商品列表 -> 选中(库存),编辑就可以了.
21:如何修改ecshop表的前缀
回答:修改data/config.php下的$prefix ="ecs_";将ecs_修改成你需要的前缀.其次,在数据库中,修改表名比如ecs_goods修改为"xxx_goods";
22:如何去除首页flash下面的空白区域
回答:参照http://www.chinab4c.com/html/shangchengchengxu/ecshopchangjianwenti/2009/0616/46.html
23:如何修改ecshop导航栏目名称
回答:后台 -> 系统设置-> 自定义导航栏 -> 编辑 ->修改导航栏名称
24:如何将最新产品栏目显示在导航栏里面?
 回答:后台 -> 系统设置 -> 自定义导航栏-> 增加自定义导航,在链接的栏目中输入"search.php?intro=new"
25:如何更换ecshop模板
回答:比如新模板“test”,你将放在themes目录下,形成的路径为themes/test,然后在后台-> 模板管理 -> 模板选择 ,起用你新加的模板就OK了。
26:ecshop产品相关的图片有那几种
回答:$goods_img = ''; // 初始化商品图片$goods_thumb = ''; // 初始化商品缩略图$original_img = '';// 初始化原始图片$old_original_img = ''; // 初始化原始图片旧图
27:ecshop首页如何设置“新品”,“精品”,“热卖”商品
回答:参照http://www.chinab4c.com/html/shangchengchengxu/ecshopchangjianwenti/2009/0706/82.html
28:如何修改“支付方式”显示顺序
回答:打开ecs_payment表,如果你想让他显示在前面,你将设置pay_order值小一些,比如想让“支付宝”排第一,“快钱”排第二,你就可以设置支付宝pay_order=1,快钱pay_order=2
29:详细页面的积分
 回答:详细页面的积分在模板<strong>{$lang.goods_give_integral}</strong><font>{$goods.give_integral}{$points_name}</font>中来控制的
30:如何修改产品缩略图大小
回答:后台 ->系统设置 -> 网店设置 -> 显示设置-> 缩略图宽度.,当然你也可以设置缩略图高度
31:如何设置ecshop货币格式和日期格式。
回答:后台 ->系统设置 -> 网店设置 -> 显示设置-> 货币格式(¥%s元)或者时间格式(Y-m-d H:i:s)
32:如何开取和关闭ecshop登陆验证码
回答:后台-> 系统设置 -> 验证码管理,在这里你可以操作各种验证码,开启和关闭
33:如何修改个人帐户信息里面,出生年月的范围
{html_select_datefield_order=YMD prefix=birthday start_year=-60 end_year=+1display_days=tr month_format=%m day_val_format=dtime=$profile.birthday}
start_year=-60意思是从今天开始,推前面60年。end_year+=1就是今年开始,往后推一年。就是表示这个范围。如果你需要更大的范围,将他们修改的更大一些。比如start_year=-100,end_year+=100。这样范围够大了把。呵呵
34:ecshop中的模板中如何包含模板
回答:查看incles/cls_template.php中,发现php中的incl e方式在smarty中依然有用. {incl efile='library/dd.lbi'}所以,你用incl e方式,就可以在ecshop中的lbi中包含lbi
35:如何调整ecshopflash播放器播放速度
回答://0xffffff:文字颜色|1:文字位置|0x0066ff:文字背景颜色|60:文字背景透明度|0xffffff:按键文字颜色|0x0066ff:按键默认颜色|0x000033:按键当前颜色|8:自动播放时间(秒)|2:图片过渡效果|1:是否显示按钮|_blank:打开窗口var swf_config = "|2|||0xFFFFFF|0xFF6600||2|3|1|_blank"
以上表明,后面的2是控制速度的,如果你感觉他快了。你就把2修改成比2大的数。这样ecshop flash播放器速度就会慢些
36:ecshop2.7.0首页轮换图片如何管理
回答:后台-> 系统设置 -> 首页主广告管理->系统默认,自定义。。。在这里。你可以进行首页flash图片管理
37.ecshop订单中,哪个字段是控制折扣的
回答:order_info表格中,discount字段控制折扣。
38:如何显示销售排行:
回答:显示销售排行,首先你需要有交易的定单,而且该定单已经交易完成,并且该定单中的产品库存不为零.如果库存为零,还是不能显示.
39:Notice: Undefined variable: _LANG inD:cmsnewincl esinit.php on line 179错误如何解决回答:认真检查语言包require(ROOT_PATH . 'lang ges/' . $_CFG['lang'] .'/common.php');文件是否存在,或者遗漏
40:ecshop flash播放器文件和图片在哪个文件夹里面
 回答:flash播放器程序在dataflashdata,图片在dataafficheimg里面
50:如果不小心把ecshop 的install.lock文件删除了怎么办
 回答:很简单.在data 目录下,建立一个名字为install.lock的文件就好了。甚至内容都不需要.
51:如何设置快递单的打印模板
回答:系统设置 ->配送方式 -> 编辑打印模板
52:ecshop如何删除“注册用户”,“VIP用户”价格
回答:会员管理 ->会员等级 -> 删除或者不显示对应会员等级的价格
53:如何调整分类列表也分页显示产品的个数。
回答:后台 -> 系统设置-> 商店设置 -> 显示设置 ->商品分类页列表的数量
54:用户中心,产品推荐,分成细节文字在那里修改:
回答:lang geszh_cnuser.php 文件中的$_LANG['affiliate_intro'][0] 内容,进行修改  

55:购物车中的文字信息如何修改“您的购物车中有 0 件商品,总计金额 ¥0.00元”
回答:lang geszh_cncommon.php 文件中,修改$_LANG['cart_info'] ='您的购物车中有 %d 件商品,总计金额 %s。';文字修改成你需要的文字56:如何控制ecshop文件的编码。
回答:header("Content-type: text/html;charset=UTF-8");
57:如何修改调整ecshop用户中心左侧栏目
回答:模板文件library/user_menu.lbi中。修改和去除一些栏目,就可以了

ecshop2.7,现在用加密方法,很难去掉。一定要去的话,可以在淘宝上找专业人士帮忙去。不过好像是收费的。
以前的版本只要在下面操作就行了。1. 删除顶部标题栏"Powered by Ecshop"信息:使用文本编辑器(推荐UltraEdit)打开 ecshop根目录/incl es/lib_main.php,找到如下代码:
$page_title = $GLOBALS['_CFG']['shop_title'] . ' - ' .'Powered by ECShop';$ur_here ='<a href="." mce_href=".">' .$GLOBALS['_LANG']['home'] .'</a>';
将蓝色部分删除或修改为自己的网站信息.
2. 修改底部"Powered by Ecshop 2.x.x"
使用文本编辑器打开文件: ecshop根目录/themes/当前模板名/library/page_footer.lbi,找到如下代码:
{insert name='qry_info'}<br/><a href="http://www.ecshop.com" target="_blank">Poweredby
<strong><span>ECShop</span><span>{$ecs_version}
</span></strong></a><br/>
将蓝色部分删除或修改加粗部分为自己网站信息.
ecshop二次开发全集 ecshop二次开发
58:如何设置网站首页最新新闻的数量
回答:后台 ->系统设置 -> 网店设置 -> 显示设置-> 最新文章显示数量
59:ecshop smarty模板中and 语法如何使用
回答:{if $smarty.foreach.table_name.iteration > 1and ($smarty.foreach.table_name.iteration-1) % 4 eq 0}
60:ecshop积分商城的产品放在哪个表里面?
回答:ecs_exchange_goods里面存储了积分商城的产品信息
61:ecshop后台如何设置产品价格格式
回答:后台->系统设置->网店设置->显示设置->商品价格显示规则
62:如何删除ecshop底部查询
回答:模板文件中library/page_footer.lbi中,删除{insertname='qry_info'}
63:如何给网站底部增加第三方统计代码
回答:后台->系统设置->基本设置->统计代码。点保存
64:页面标题和中间导航,程序在那里?
回答:incl es/lib_main.php中的assign_ur_here()函数中
65:如何手动调节一个ecshop会员的等级
回答:后台->会员管理->会员列表->选中某个会员-> 查看帐目明细 -> 调节会员帐户 ->等级积分帐户(增加或者减少)相对应的分,调节到需要调节的会员等级的积分。就能达到手动调节会员等级的效果
66:如何改变ecshop首页flash显示的大小
回答:模板文件中,index.dwt.
<scripttype="text/javascript">var swf_width=534;var swf_height=218;</script>
修改他的值就可以了
67:如何修改网站关闭后的提示信息?
回答:lang geszh_cncommon.php中,把这句中文,修改成你要的文字$_LANG['shop_closed'] = '本店盘点中,请您稍后再来...';68:js如何取select的值
回答:var t =document.getElementByIdx_x("typeController");alert(t.options[t.selectedIndex].val);
69:让ecshop属性下拉格式显示
回答:后台-系统设置-商店设置-商品显示设置 第六行 商品属性显示样式:单选按钮 下拉列表
70:如何控制评论的审核状态
回答:后台->系统设置->商店设置->基本设置->用户评论是否需要审核
71:ecshop中奇兵夺宝的时间和信息在哪个表
回答:ecs_snatch_log里面装着出价的时间和价格。还有用户ID,出价时间是bid_time
71:ecshop模板如何控制字符长度
回答:{$article.short_title|truncate:10:"...":tr}这样就可以截取字符串长度了
好忙啊。。。。。待叙。。。。争取早日完成100条。。。
72:如何编辑“ecshop用户协议”
回答:后台->文章管理->文章列表->编辑“用户协议”那篇文章。
73:如何修改后台操作栏目条
回答:lang geszh_cnadmincommon.php中修改
74:如何在ecshop自定义导航栏增加ecshop积分商城
回答:exchange.php增加进去,就可以了。
75:ecshop数据库备份的文件放在哪个目录
回答:datasqldata目录下面
76L如何加强ecshop搜索
回答:
word_list = explode(' ',$keyword);foreach ($word_list as $word){$conditions .= " AND (g.goods_name LIKE '%" . trim($word) ."%')";}
根据ecmall论坛上朋友的思路,可以更加方便搜索.
77:如何增加在ecshop中增加和"中国"同一级别的地区地址。
回答:insert into ecs_regionvals('','0','美国','0','0');在根据该region_id.插入不同级别地区。
78:如何修改ur_here.lbi中的信息
回答:incl es/lib_main.php函数中,修改assign_ur_here()函数
79:如何修复mysql的myd文件。
回答:执行REPAIR TABLE 命令
80:如何控制ECSHOP商品浏览历史数量
回答:系统设置->商店设置->显示设置->浏览历史数量设置
81:如何删除用户评论
答案是:进入themesdefaultlibrarycomments_list.lbi把这个页面的整个源码注释掉,在开头加上 <!-- 在最后尾部加上-->
82、在首面的最上面的logo边添加banner 的方法
修改模板文件里的page_header.lbi文件,在里面添加相关的代码文件即可,如下演示:
<p id="logo"><ahref="../index.php"><imgsrc="../images/logo.gif" alt="logo"/></a>  <imgsrc="../images/banner.gif" alt="banner广告"/></p>
红色的地方就是添加的banner图片代码。至于大小,大家根据情况自己再调整下吧。
83、如何在文件里加入JS代码,如果按一般平常添加方法,会出错,解决的方法:
把script套在{literal}{/literal}之间试试看,例如:
{literal}<scripttype="text/javascript">....</script>{/literal}

==========================================================================================================================================================================================================================================================================================================================
ecshop首页调用最新评论已有 94 次阅读 2009-08-16 20:42 标签: ecshop首页 评论 转载:
昨天自己到百度搜了一些关于smart的一些文章,还有一个smart开发文章,现在分享给大家,并且就首页显示评论的功能教大家怎么去做,怎么个思维。
在这之前,请大家看看这篇文章http://linux.chinaitlab.com/PHP/38324.html
smart手册我附件里下载
现在开始教大家这个功能的实现过程
首先大家要明白ecshop的目录结构
incl es 【程序库文件,直观理解就是首页的php文件是直接调用功能函数的,而这些函数都在incles下集中保存了,方便调用】themes 【模板目录】
功能要在 index.php 页面实现 html布局要写在 index.dwt 模板文件里
记住一个重要的思想:“index.php里我们把要显示的内容都保存到一个变量,,在到index.dwt显示出这个变量”
理论上,我们在index.php加入php代码就可以了,但是为了程序结构清晰,我们把稍微复杂的程序写到incles函数库中。
下面我们怎么做呢,我们目前要考虑的是,把要调用的内容存在变量里,内容在哪呢,mysql数据库,对。
我选择了修改 lib_goods.php 这个库函数文件,主要参考了调用最新商品的函数也在这里,所以就选择了这个文件,具体incl es下的文件结构,我还不懂。
在任意位置,当然不要加到其他函数里面去了,添加如下代码:
【代码我也不太会写,主要参考了admin目录下的,comment_manage.php】
ps://后面的注释可以都删掉,我只是想给大家说明白为什么这样写
function get_comment_index() //函数名 index.php我们要调用的{$sql = “SELECT * FROM ”.$GLOBALS['ecs']->table(’comment’). ” WHEREparent_id = 0 and status = 1 ORDER BY comment_id DESC LIMIT 5 “; // 查询数据库,parent_id 0是用户的评论,屏蔽掉了管理员的回复;status是允许显示的评论,limit 5 限制只显示5条,大家可以随意改$result = $GLOBALS['db']->getAll($sql); //执行这个查询$comment = array(); //建立一个数组foreach ($result AS $idx => $row) //建立循环,循环所有查询的条数{ $comment[$idx]['id'] =$row['comment_id']; // 评论id,,一般用不上,但这里调用了备用 $comment[$idx]['name'] =$row['user_name']; // 评论人 $comment[$idx]['content'] = $row['content']; //评论内容 $comment[$idx]['rank'] =$row['comment_rank']; //评论分数 $comment[$idx]['time'] =local_date($GLOBALS['_CFG']['time_format'], $row['add_time']); //评论时间 [这个我没测试,结果不一定对] if ($row['comment_type'] == 0) //comment_type区别了是文章调用,还是商品调用{ $sql = “SELECT goods_name FROM ”.$GLOBALS['ecs']->table(’goods’). ” WHERE goods_id =‘$row[id_val]‘”; //查询商品表,id_val是评论表里的数据,指定了评论对象的id $comment[$idx]['title'] =$GLOBALS['db']->getOne($sql); //取得评论对象 $img= “SELECT goods_imgs FROM ”.$GLOBALS['ecs']->table(’goods’). ” WHERE goods_id =‘$row[id_val]‘”; //查询商品表,id_val是评论表里的数据,指定了评论对象的id $comment[$idx]['img'] =$GLOBALS['db']->getOne($img); //取得评论对象的图片 $comment[$idx]['url'] =“goods.php?id=$row[id_val]“; //取得评论对象的url}else{ $sql = “SELECT title FROM ”.$GLOBALS['ecs']->table(’article’). ” WHEREarticle_id=’$row[id_val]‘”; //查询文章表 id_val共用的 $comment[$idx]['title'] =$GLOBALS['db']->getOne($sql); //取得评论对象 $comment[$idx]['url'] =“article.php?id=$row[id_val]“; //取得评论对象的url}}return $comment;}复制代码
index.php :
88 行下面加上
$smarty->assign(’comment’, get_comment_index()); //评论列表复制代码
大概理解为,get_comment_index() 函数取得的内容,送到comment 变量,在模板中调用
index.dwt: 大家自己分析吧,,能看懂这篇文章的,模板部分肯定没问题。回应功能还没做,日后需要加上。
<!————————–评论调用 START———————–><!–{foreach from=$commentitem=comment}–><ULclass=”tlst”> <LIclass=”ilst” style=”CLEAR: both”><Atitle=國產凌凌漆href=”http://www.do?n.com/sject/1307739/”><IMG class=filalt=國產凌凌漆src=”images/s2865043.jpg”></A></LI> <LIclass=”clst”><SPAN class=”pl llobss”><SPANclass=starb><Ahref=”http://url”>{$comment.name}</A>评论: <Ahref=”{$comment.url}”>{$comment.title}</A></SPAN><SPANclass=”stars{$comment.rank}stars”></SPAN></SPAN><BR><BR> <DIVclass=”pl”>{$comment.content|truncate:90:”…”}<Aclass=plhref=”http://url”>(48回应)</A></DIV></LI></UL><DIVclass=clear></DIV><!–{/foreach}–><!————————–评论调用END—————————>

==========================================================================================================================================================================================================================================================================================================================

调用最新评论<?phpif(!function_exists("get_comments")){function get_comments($num){$sql = 'SELECT * FROM ecs_comment '. ' WHERE status = 1 ANDparent_id = 0 and comment_type=0 '. ' ORDER BY add_timeDESC'; if ($num >0) {$sql .= ' LIMIT ' . $num; } //echo $sql; $res =$GLOBALS['db']->getAll($sql); $comments =array(); foreach ($res AS $idx=> $row) {$comments[$idx]['user_name'] = $row['user_name'];$comments[$idx]['content'] = $row['content'];$comments[$idx]['id_val'] = $row['id_val']; } return $comments;}}?><meta http-equiv="Content-Type"content="text/html; charset=utf-8"><!--数据调用-最新评论开始 --> <?php $this->assign('my_comments',get_comments(6)); //6代表会条数据?> <div id="promotion"> <div><divid="comments_left"></div><divid="comments_right"></div></div> <div><ul><!--{foreach from=$my_commentsitem=comments}--><li><ahref="goods.php?id={$comments.id_val}"target="_blank">{$comments.content|truncate:10:""}</a></li><!--{/foreach}--></ul></div></div>

首页调用这个库文件就OK了.<!-- #BeginLibraryItem"/library/index_comments.lbi" --><!--#EndLibraryItem -->
样式大家自己根据网店的风格调整下!

==========================================================================================================================================================================================================================================================================================================================

1、首先修改程序部分打开incl es/lib_goods.php找到get_promote_goods()函数部分在$goods[$idx]['url'] =build_uri('goods', array('gid' => $row['goods_id']),$row['goods_name']);复制代码下面增加代码

$time = gmtime();
if ($time >=$row['promote_start_date'] && $time<= $row['promote_end_date'])
{
$goods[$idx]['gmt_end_time'] =local_date('M d, Y H:i:s',$row['promote_end_date']);
}
else
{
$goods[$idx]['gmt_end_time'] = 0;
}复制代码2、然后将 library/recommend_promotion.lbi全部替换为下面代码:<meta http-equiv="Content-Type"content="text/html; charset=gbk">
<!-- {if $promotion_goods}-->
<script >
var Tday = new Array();
var daysms = 24 * 60 * 60 * 1000
var hoursms = 60 * 60 * 1000
var Secondms = 60 * 1000
var microsecond = 1000
var DifferHour = -1
var DifferMinute = -1
var DifferSecond = -1
function clock(key)
{
var time = newDate()
var hour =time.getHours()
var minute =time.getMinutes()
var second =time.getSeconds()
var timeval = ""+((hour> 12) ? hour-12:hour)
timeval +=((minute< 10) ? ":0":":")+minute
timeval +=((second< 10) ? ":0":":")+second
timeval +=((hour>12 ) ? " PM":" AM")
var convertHour =DifferHour
var convertMinute =DifferMinute
var convertSecond =DifferSecond
var Diffms =Tday[key].getTime() - time.getTime()
DifferHour =Math.floor(Diffms / daysms)
Diffms -= DifferHour *daysms
DifferMinute =Math.floor(Diffms / hoursms)
Diffms -= DifferMinute *hoursms
DifferSecond =Math.floor(Diffms / Secondms)
Diffms -= DifferSecond *Secondms
var dSecs =Math.floor(Diffms / microsecond)

if(convertHour !=DifferHour) a="<fontcolor=red>"+DifferHour+"</font>天";
if(convertMinute !=DifferMinute) b="<fontcolor=red>"+DifferMinute+"</font>时";
if(convertSecond !=DifferSecond) c="<fontcolor=red>"+DifferSecond+"</font>分"
d="<fontcolor=red>"+dSecs+"</font>秒"
if(DifferHour>0) {a=a}
else{a=''}
document.getElementByIdx_x("leftTime"+key).innerHTML = a + b + c + d;//显示倒计时信息

}
</script>
<div id="sales">
<h1><ahref="../search.php?intro=promotion"><imgsrc="images/more.gif"/></a></h1>
<div>
<!--{foreachfrom=$promotion_goods key=key item=goodsname="promotion_foreach"}-->
{if$smarty.foreach.promotion_foreach.index <= 3}
<div>
<ahref="{$goods.url}"><imgsrc="{$goods.thumb}" border="0"alt="{$goods.name|escape:html}"/></a><br/>
<p><ahref="{$goods.url}"title="{$goods.name|escape:html}">{$goods.short_name|escape:html}</a></p>
{$lang.promote_price}<font>{$goods.promote_price}</font><br><fontid="leftTime{$key}">{$lang.please_waiting}</font>
</div>
{/if}
<script>
Tday[{$key}] = new Date("{$goods.gmt_end_time}");
window.setInterval(function()
{clock({$key});}, 1000);
</script>
<!--{/foreach}-->
</div>
</div>

<!-- {/if} -->

==========================================================================================================================================================================================================================================================================================================================如何在ecshop中实现商品属性的调用1.在category.php文件中约425行
$arr[$row['goods_id']]['url'] = build_uri('goods',array('gid'=>$row['goods_id']),$row['goods_name']);
后加入代码:
$arr[$row['goods_id']]['spec'] =get_goods_attr($row['goods_id']);

2.在goods_list.lbi模板库文件中相应位置加入代码:
<!--{foreach from=$goods.specitem=spec}--><p>{$spec.attr_name}:<!--{foreachfrom=$spec.goods_attr_list item=spec_list}-->{$spec_list}/<!--{/foreach}--></p><!--{/foreach}-->

  

爱华网本文地址 » http://www.413yy.cn/a/25101014/228359.html

更多阅读

怎么进行discuz的二次开发 discuz二次开发教程

怎么进行discuz的二次开发——简介discuz 作为目前最受欢迎的开源程序之一,很多人都想要自己二次开发来达到自己想要的效果,那么我们需要了解什么呢?接下来看下吧怎么进行discuz的二次开发——工具/原料 能够理很好理解MVC构架的原理(

自学ecshop二次开发 ecshop二次开发手册

????????现在好多企业,尤其是做电子商务的中小企业,选择了ecshop。究其原因可能是因为换模板比较容易的原因吧????????如果你是php程序员,你应该了解一下这个echsop,无论是对你的代码精简能力还是编写功能的能力都将有很大的提升。好多

ECshop商城二次开发博客 ecshop二次开发手册

ECshop二次开发博客如何隐藏站长统计代码摘要: 方法一:这里放站长统计代码方法二:一般的统计代码都是script 的。只要将中的 script language="javascript" type="hidden"type="“后面的引号换成hidden就可以了。方法三:可以把网站统计

ArcGIS二次开发学习

从11月29日开始学习ArcGIS二次开发到现在,好迷茫啊!我们的需求是这样的:要利用数据、API和对象开发GIS服务接口和组件。接口包括Webservice和javaAPI。组件包括AJAX和flex。GIS服务需要具备的功能:1

ecshop二次开发全集 ecshop二次开发

添加商品属性;ecshop二次开发,增加商品属性的方法,添加商品属性的方法默认分类 2009-09-04 23:22 阅读740 评论1 字号: 大大中中 小小本文来自:http://p2pq.cn/thread-1063-1-1.htmlecsho增加商品属性,ecsho添加商品属性,ecshop二次开发

声明:《ecshop二次开发全集 ecshop二次开发》为网友温文尔雅分享!如侵犯到您的合法权益请联系我们删除