Tag Archives: ecshop
ECgroupon加入城市天气预报功能
先看图 最后能够实现天气随着城市的切换而切换。 首先group_city表加入字段 ALTER TABLE `ecs_group_city` ADD `weather` VARCHAR( 30 ) NOT NULL AFTER `city_sort` ; ADD `temp` VARCHAR( 30 ) NOT NULL AFTER `weather` , ADD `image` VARCHAR( 30 ) NOT NULL AFTER `temp` , ADD `weather_time` INT( 10 … Continue reading
ECShop 订单价格去掉小数点取整
方法1 进入mySQL数据库 修改表ecs_cart中goods_price字段结构 原来长度值是 : 10,2 ,修改为10,0 不过这个方法实践中有个缺点,和商品展示页面里面的个会员等级的价格不一致,因为数据库中的decimal(10,0)直接将小数点后面全部去掉,而非四舍五入。也就是当在后台设置“显示设置”中“商品价格显示规则”设定为“不四舍五入,不保留小数”时两个价格才一致。 方法2 后台设置“显示设置”中“商品价格显示规则”设定为“不四舍五入,不保留小数” 修改/includes/lib_order.php里面的cart_amount(), 将return floatval($GLOBALS['db']->getOne($sql)); 修改为 return intval($GLOBALS['db']->getOne($sql)); 修改/includes/lib_common.php里面的price_format() 将$price = number_format($price, 2, '.', ''); 修改为 $price = number_format($price, 0, '.', '');
仿ECShop,让Smarty也支持模板路径替换机制
好的,为了把事情讲清楚,我们通过有图有真相的方法,把我的问题描述一下。 首先我们来看看这个项目的文件树: smarty目录是smarty程序,themes是模板目录,themes下面的每一个子目录代表一种模板。默认是default模板。 模板下面的dwt是模板文件,lib里面lbi是模板库文件,images目录存放图片。和ECShop十分的类似,因为我准备仿它。 每个dwt对应一个php页面,比如index.php对应index.dwt。 好了。 比如说index.dwt里面有句代码: <img src="images/user.gif" alt="user" /> 也许你会认为这个图片可以显示出来,但是我们打开localhost/index.php,发现图片并未显示,图片的路径变成了localhost/images/user.gif,而真正的路径应该是localhost/themes/default/images/user.gif。 这只是图片的例子,如果js或者css都需要替换,就需要给smarty写个插件或者是扩展smarty的代码。 小弟不才,只能在原来smarty的继续上修改代码,方法是: 打开Smarty_Compiler.class.php,跳转到_compile_file函数的这句: $compiled_content = $template_header . $compiled_content; 的下面添加以下代码,都是用正则表达式(preg_replace)来替换字符串,具体含义有注释: $tmp_dir = 'themes/' . $GLOBALS['_CFG']['template'] . '/'; // 模板所在路径 /* 修正css路径 */ $compiled_content = preg_replace('/(<link \shref=["|\'])(?:\.\/|\.\.\/)?(css\/)?([a-z0-9A-Z_]+\.css["|\']\srel=["|\']stylesheet["|\']\stype=["|\']text\/css["|\'])/i','\1' . $tmp_dir … Continue reading
是ECShop的报错,不是我们的
下午进后台,发现了以上错误,开始以为是mysql出问题了,重启动了mysql无效,最后我们蛋疼的发现原来这个是来自api.ecshop.com的错误。 因为后台的主页的模板(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>
ECShop中图片,CSS,JavaScript的路径替换原则
ecshop会自动解析模板文件中的图片,css文件,js文件的路径,但也是有前提的,比如: 样式文件 ecshop.css会被解析成themes/(模板目录名) /ecshop.css css/ecshop.css会被解析成 themes/(模板目录名)/css/ecshop.css 而 styles/ecshop.css却还是styles/ecshopcss 图片文件: ecshop.gif不会被解析 images/ecshop.gif会被解析成themes/(模板目录名)/images /ecshop.gif 而img/ecshop.gif 则不会被解析 js文件: ecshop.js 不会被解析 而js/ecshop.js会被解析成themes/(模板目录名)/js/ecshop.js javascripts/ecshop.js 则不会被解析 —————————————-以上内容来之网上,其实ecshop对图片,CSS,JavaScript的路径替换原则可以参看include/cls_template.php文件里面的smarty_prefilter_preCompile()的最后几行正则替换: /* 在头部加入版本信息 */ $source = preg_replace('/<head>/i', "</head><head>\r\n<meta name=\"Generator\" content=\"" . APPNAME .' ' . VERSION . "\" />", $source); … Continue reading
ECShop分类目录标题(title)自定义
首先修改后台模板文件:/admin/templates/category_info.htm 在这个tr <tr> <td>{$lang.keywords}:</td> <td><input type=”text” name=”keywords” value=’{$cat_info.keywords}’ size=”50″> </td> </tr> 下面再加一个tr,内容如下: <!–增加目录title自定义–> <tr> <td>{$lang.cat_title}:</td> <td> <input value=’{$cat_info.cat_title}’ name=”cat_title” size=”100″> </td> </tr> <!–/增加目录title自定义–> 数据表ecs_category增加cat_title字段: ALTER TABLE `ecs_category` ADD `cat_title` VARCHAR( 255 ) NOT NULL AFTER `cat_desc` ; 在\languages\zh_cn\admin\category.php中 $_LANG['keywords'] = … Continue reading
简化ECShop购物流程
往往最可惜的是在购物环节上流失的顾客,如果ecshop购物的流程能够简化一些,我想不仅仅是方便了购物者 ,也会提高网店的效益,下面就告诉大家解决ecshop购物流程的简方法。 我们先要进入后台,在商店设置-购物流程中把“是否允许未登录用户购物”选中“允许”,然后“是否一步 购物”选中“是”。 然后在根目录下面找到flow.php这个文件,找到代码: ecs_header("Location: flow.php?step=login\n"); 将上面的改成下面这段即可: ecs_header("Location: flow.php?step=consignee&direct_shopping=1\n"); 这是为了把用户没有登录且没有选定匿名购物,转向到登录页面 , 现在还没有完成,我们还需要设置一下其他地方,系统设置-会员注册项设置,将所有的选项,只显示QQ和手 机,并且修改为不是必填的。这样做的目的是让顾客在注册帐号的时候感到便捷,另外评论时也可以把验证码 也去掉。 当然这是一种简化方法,还有很多不同的简化程度,例如一步购物:也就是点击购买后,直接到一个页面,填 写购买信息,以及选择快递方式,支付方法,然后确定提交就完成了的。我想减少顾客的流失,也是提高效益 的一个不错的方法。
ECShop 2.7.2去掉Powered by ECShop
正在调试程序,突然发现自己眼睛花掉了。居然在页上面出现个Powered by ECShop 错觉吧,继续调试。汗过了几分钟又出现了。于是看看到底怎么回事 查找后发现在php文件中有这个组代码: $_LANG['p_y']['link_start'] = '<a href="http://www.ecshop.com" target="_blank" style=" font-family:Verdana; font-size:11px; ">'; $_LANG['p_y']['link_p'] = 'Powe'; $_LANG['p_y']['link_r'] = 'red '; $_LANG['p_y']['link_b'] = 'by '; $_LANG['p_y']['main_start'] = '<strong><span style="color: #3366FF">'; $_LANG['p_y']['main_e'] = 'E'; $_LANG['p_y']['main_c'] = 'CSho'; $_LANG['p_y']['main_p'] = 'p</span> '; $_LANG['p_y']['v_s'] = '<span … Continue reading
ECShop transport.js/run() error:undefined问题解决
在制作ECshop的模板中碰到的问题,当点击“加入购物车”之后,弹出警告:“transport.js/run() error:undefined”。 transport.js在ECShop是管理Ajax方面的,用firebug调试,那个ex异常实例的Message是:process_request is not defined。 参考默认模板的page_header.lbi模板库文件,在<body>标签下面贴上以下代码: <script type=”text/javascript”> var process_request = “{$lang.process_request}”;</script> 酱子process_request变量就定义了,也不报错了。 参考:http://bbs.ecshop.com/redirect.php?goto=findpost&ptid=75094&pid=297216