分类归档

网站开发

FWQ
网站开发
解决ecshop清除缓存css样式没反应问题
部分浏览器例如谷歌或360等双核浏览器会对商城的css样式进行缓存,导致修改了css样式文件也没有更新。提供解决方法,修改后效果如下: 解决方法: 修改includes/init.php 找到 if (!empty($_CFG[‘stylename’])) {     $smarty->assign(‘ecs_css_path’, ‘themes/’ . $_CFG[‘template’] . ‘/style_’ . $_CFG[‘stylename’] . ‘.css’); } else {     $smarty->assign(‘ecs_css_path’, ‘themes/’ . $_CFG[‘template’]…
2025-04-24 阅读全文 →
FWQ
网站开发
ecshop源码分析-ecshop二次开发
ecshop源码分析-ecshop二次开发 Ecshop包括的文件夹有admin、api、cert、data、images、includes、js、languages、plugins、temp、theme、wap、widget这些文件夹,和根目录下的所有.php文件。这些文件和文件夹组成了整个ecshop。如果从软件工程角度分析ecshop的话,ecshop的二级可以看成admin和前台两个部分。admin主要是面向服务端的,而前台是面向客户端的,这是这两个部分的最明显的差别。下面给出ecshop的二级流程图:   此二级流程图给出了admin模块、前台显示模块和数据库模块之间的一个关系。从上面的图示可以看出,admin模块要对数据库进行读和写,这里的读和写组成了整个的后台的管理,包括商品的增加和删减、留言的管理、订单的处理等等。前台模块也要对数据库进行读和写,它的读写主要是完成交易的过程,写的内容基本都是和商品数量、点击数量这些在商品交易中一定要改变的数字。在admin模块也可以对前台显示部分进行写,这个写的过程主要是完成前台显示方式的改变,比如admin模块可以选择模板;同样也可以改变每个小模块在某个页面中是否显示,以及显示的位置(如果显示)。   Images文件夹: 这个文件夹下有子文件夹,在这些子文件夹下面存放着当前网站商品的原始图片和缩略图。这些子文件夹命名有规律的,它们的文件名是它们目录下商品加入的年月份。也就是说在同一个月份加入的商品,它们的图片是在同一个文件夹下的,且这个文件夹的名字就是当前的年月份。后台每添加一个带图片的商品,这边都会在某个文件夹下出现提交图片的副本。 Data文件夹: 这个文件夹是包括一些固定的数据,比如固定的配置、图片等等。在data这个文件夹下的config.php记录了数据库的一些固定的信息,afficheimg文件夹下存放这首页最中间的flash的图片源。实现将afficheimg文件夹下的图片加载到首页的flash中是通过文件夹flashdata下面文件夹dynfocus中的javascript来实现的。文件夹brandlogo下存放这有品牌商品的公司的logo,另外文件夹captcha下存放这验证码的背景图片。 Theme文件夹: 页面的显示是有theme这个文件夹全权负责的。而这些准备的数据是怎么在theme下的.dwt中显示的呢?数据是通过smarty加载进去的。在根目录下每个.php文件中都会有类似$smarty->assign(’page_title’, $position[‘title’]);这样的句子,这样page_title在对应的dwt文件中就可以作为一个变量使用了。这样就将php文件很dwt文件很好的结合好了。 下面稍微说一下dwt这个文件。这个文件中大部分的信息是自动生成的。在dwt文件中都会看到这样的块,这个快就是用来确定每个模块显示的位置的,如果在后台将某个模块选择显示在“左边区域”,那么这个模块的代码会在上面的这个区域生成。当然在dwt文件中我们也会到处看到这里面的代码全都是自动生成的,要改也只能该.lbi文件。还有就是在出现之前,这两个标志之间不能直接编辑代码,要加入自己的代码必须要在和下一个BeginLibraryItem之前插入。 程序: 程序主要是包括(这里说的是关于前台的)根目录下的所有的php脚本、includes,js文件夹,这些所有的脚本完成了前台显示的数据准备。所以它们在整个ecshop的结构中占着相当重要的地位,对ecshop的修改也主要集中在这些脚本中,这些脚本的具体分析会在后期中一一给出。 在上一篇中给大家带来了ecshop的总体的框架。从总体上看ecshop,相信大家的思路应该很清楚。作为一个对开源项目修改者你来说,能对ecshop有个初步的了解就行了,下面我会给大家带来我在修改ecshop的过程中的一些体会。 记得在上一篇中我们聊到了Adobe的模板。下面我们来根据ecshop跟大家讨论一下模板。说到模板,这就是ecshop前台显示的主要文件,如果你能很好理解theme下模板文件和样式表文件,对于ecshop前台显示应该没有任何问题了。Ecshop中页面到底是怎么显示的呢?这个问题我们先放在一边,我们先研究一下ecshop是怎么将一系列从数据库中读取出来,然后传到显示页面中的。要解决这个问题我们要用根目录下的index.php和theme/default下的index.dwt来作为用例。之所以用对应的两个文件夹,是因为在index.dwt中要显示的数据是通过smarty从index.php中加载进来的。在index.php中有如下代码: $position = assign_ur_here();$smarty->assign('page_title', $position['title']); // 页面标题$smarty->assign('ur_here', $position['ur_here']); // 当前位置  首先它是调用函数assign_ur_here,这样得到了变量$position,在变量$position中有title和ur_here这两个变量。在index.dwt中会有如下代码:  …
2025-04-24 阅读全文 →
FWQ
网站开发
如何在ecshop模板使用自定义函数
在使用自定义函数 可以增加自定义函数,在模板直接调用,例如: {$userId|get_user_name} 或 {$imgUrl|set_width_height:100:200}   案例一(处理图片): 1.模板里使用{$imgurl|getpic:100:200} 2.includes/lib_base.php里面增加函数 function getpic($str, $width, $height){ $len= stripos($str, '.'); if($len !== false){ $str= substr($str, 0, $len).'_'.$width.'-'.$height.stristr($str, '.'); return $str; } else{…
2025-04-24 阅读全文 →
FWQ
网站开发
在ECSHOP首页显示积分商城里的商品
 今日看到ecshop论坛里有些朋友在讨论“如何在首页调用积分商城里的商品”, 也有一些朋友已经写出了大部分代码,但是由于个别错误,未能实现。 下面就以ECSHOP2.7.2官方默认模板为基础,给大家提供一个完整的解决方案。 1)、 首先打开 index.php 文件 在最末尾增加下面函数,注意千万不要写到 “?>” 的外面去,要加在“?>”的前面。   /** * 获得积分商城热门商品 * * @param   int      $limit        列出条数 * @param   int      $ishot       是否只显示热销 * @return array…
2025-04-24 阅读全文 →
FWQ
网站开发
ecshop如何调用收货地址
ecshop当中如何调用收货地址, 静态部分:html {insert_scripts files='region.js,utils.js'} <script type="text/javascript"> region.isAdmin = false; {foreach from=$lang.flow_js item=item key=key} var {$key} = "{$item}"; {/foreach} {literal} onload = function() { if (!document.all) { document.forms['theForm'].reset(); }…
2025-04-24 阅读全文 →
FWQ
网站开发
ecshop商品详情页标题的优化办法
打开模板文件夹的goods.dwt文件,找到如下代码。          <!– TemplateBeginEditable name=”doctitle” –> <title>{$page_title}</title>   可以看到默认的标题是{$page_title},我们把{$page_title}修改成{$goods.goods_style_name}_{$shop_name}这样就修改成功了。 关于文章的标题的修改是一样的。
2025-04-24 阅读全文 →
FWQ
网站开发
在Ecshop首页上显示最新评论(评论内容&时间)
本教程以“ECSHOP2.7.2 + 官方默认模板” 为例,其他模板大同小异, 效果图如下: 第一步: 将下面代码复制,并保存为一个库文件,文件名和保存路径为: /themes/default/library/index_comments.lbi <?php if(!function_exists(“get_comments”)){ function get_comments($num) {    $sql = ‘SELECT * FROM ‘. $GLOBALS[‘ecs’]->table(‘comment’) .             ‘ WHERE status = 1…
2025-04-24 阅读全文 →
FWQ
网站开发
修ecshop品牌筛选以LOGO图片形式显示
 如何实现商品列表页属性筛选区品牌筛选以LOGO形式展示,好模板总结入下: 1、修改 category.php 文件,将(大概215行) $sql = “SELECT b.brand_id,b.brand_logo, b.brand_name, COUNT(*) AS goods_num “. 在(大概227行) $brands[$temp_key][‘brand_name’] = $val[‘brand_name’]; 下面增加 $brands[$temp_key][‘brand_logo’] = $val[‘brand_logo’]; 在(大概242行) $brands[0][‘brand_name’] = $_LANG[‘all_attribute’]; 下面增加 $brands[0][‘brand_logo’]=”; 2、修改…
2025-04-24 阅读全文 →