20150411--Dede二次开发-01

目录

一、目前市场流行的电子商城系统 1

二、ecshop的介绍 1

三、安装 2

四、echsop 的目录结构 5

五、分析ecshop里面程序的架构 5

六、小试牛刀把面包屑导航改成两个大于号 6

1、根据php页面找出该页面对应的模板。 6

2、找到category.dwt模板文件,打开找到面包屑导航的位置 6

3、在library目录中找出  ur_here.lbi文件 7

七、init.php文件分析 9

八、完成在用户登录是, 可以使用邮箱登录。 11

九、完成余额显示: 15

十、在添加新商品的时候,添加一个seotitle,便于在商品的详情页面显示。 17

十一、套模板 20

1、把模板文件拷贝到themes目录下面。模板的样式和图片的路径要和ecshop里面默认的一致 20

2、在模板文件中取出导航信息。 21

3、显示出商品的分类 22

4、取出热销排行 24

5、取出精品推荐数据 25

一、目前市场流行的电子商城系统

Ecshop

shopNC(代码部分加密)

国外:zencart,magento(麦金斗)

一般在外贸的公司,用zencart,magento用的多一些.

Magento是基于zendframework来开发的.

二、ecshop的介绍

ecshop是上海商派网络科技有限公司(shopEx)旗下—B2C独立网店系统,适合企业及个人快速构建个性化网上商店。系统是基于php语言及mysql数据库架构开发的跨平台开源程序。

历史:

2006年6月,ecshop推出第一个版本1.0

2007年5月到6月,ecshop管理层将ecshop卖给康盛世纪。

2008年10月10日,ecshop系列软件(包括 ecshop,ecmall, maifou等),被上海商派网络科技有限公司(shopEx)整体收购。

2012年4月,发布ecshop v2.7.3 release 0411

三、安装

1、下载解压,把upload目录拷贝网站的根目录(虚拟主机目录)

2、配置一个虚拟主机

3、如果你的php的版本比较高,则屏蔽一些输出提示错误。

打开includes目录下面的init.php文件

在打开后台目录(admin)的init.php文件。

4、执行安装,在浏览器里面访问域名即可。

四、echsop 的目录结构

五、分析ecshop里面程序的架构

1:Ecshop属于面向过程+函数调用为主, 而且没用单入口模式具体的功能对应具体的页面.

2:用的模板引擎是简化的smarty模板.

第一步:包括include/init.php,进行数据库以及smarty等的初始化工作

第二步:调用相关函数从数据库中取数据,然后Assign

第三步:display一个静态页

总结:也是一个MVC的架构,只不过不是纯OOP的,也不是单一入口的。

纯OOP:所有的东西必须属于一个类,不能游离在类的外面。

控制器: 根目录下的php文件

模型层:includes/下的一些以lib_开头的文件,如:lib_article:文件相关操作。

视图层:themes/ 前台静态页

六、小试牛刀把面包屑导航改成两个大于号

1、根据php页面找出该页面对应的模板。

2、找到category.dwt模板文件,打开找到面包屑导航的位置

思路:根据在静态页面分析:只需在模板中找到<div id=”ur_here”>位置,即可找到。

通过分析,导航是在library目录下面的ur_here.lbi文件中,

3、在library目录中找出  ur_here.lbi文件

发现导航的输出是通过{$ur_here}变量输出的

说明在php页面中必定有一个$smarty->assign(‘ur_here’,);

搜索当前没有该函数,说明该函数是在其他页面中定义的。

打开init.php文件,通过该文件中require的其他文件进行查找

最后发现是在lib_main.php文件中的。

自己练习 :去掉标题里面的powered by echsop字样。

七、init.php文件分析

1、定义一个根目录,便于引入其他的文件。

2、判断是否安装

3、初始化设置,当没有权限修改服务器在中的php.ini文件时可以自己在页面通过ini_set函数来完成修改。

4、判断魔术引号是否开启,如果没有开启则要自定义函数完成数据的过滤。

$sql=”select * from user where username=’$username’#’ and password=’$password’”;

5、初始化数据库的类

$ecs->table(‘sessions_data‘)//返回参数的实际表名

6、载入语言包文件目录

7、判断访问来者

8、创建smarty对象

时间: 2024-10-24 22:11:01

20150411--Dede二次开发-01的相关文章

微擎人人商城二次开发01

刚开始工作就接触微擎人人商城的二次开发,折腾了很久下面总结下我所学到的: 首先是安装包ewei_shopv2: 将后端ewei_shopv2文件夹上传至微赞微擎Addons目录 文件夹介绍 路由:http://*******/web/index.php?c=site&a=entry&m=ewei_shopv2&do=web&r=agency.productc = site :a = entry表示后台模块m 表示具体哪个模块do 要执行的site类中的doWeb***方法r

如何在dede栏目设置中添加自定义字段(dede二次开发-纯抄贴)

如何在dede栏目设置中添加自定义字段 这个说法以前没有见到到,很少有客户会提出这样的二次要求,今天织梦者在网上转了一下看到了这样的一篇文章转过来与大家分享 鉴于这个教程没人发过,网上搜索的人也比较多.所以就做了个. 比如我要添加:栏目图片,和栏目关键字等.随便你吧.好.我们现在开始做. 第一我们要进去mysql 数据库里添加字段,自己命名好!比如我下面添加了一个栏目搜索关键字字段,当然你字段可以自己新建,找到表dede_arctype (这个是栏目模型的数据库表,前面是你安装的表名,新手要注意

《proe 二次开发01》

[1.] "protected: virtual struct AFX_MSGMAP const * __thiscall SelectDLG::GetMessageMap(void)const " 出现这个原因是因为创建一个新类时,不能设置基类为CObject,随便选择了一个基类,然后,在将其改为CObject.“MSGMAP”这个词出现在了错误中,说明与MessageMap有关[解决方法]:1.“DECLARE_MESSAGE_MAP()”就是因为多加了一句这个,删除这一句.2.D

[转载]织梦DEDE多选项筛选_联动筛选功能的实现_二次开发

织梦默认的列表页没有筛选功能,但有时候我们做产品列表页的时候,产品的字段比较多,很多人都需要用到筛选功能,这样可以让用户更方便的找到自己所需要的东西,实现这个联动筛选功能需要对织梦进行二次开发,下面就告诉大家如何对织梦进行二次开发实现这个很多人都需要的筛选功能,如下图所示: 首先需要说明的是这个功能需要在模板里面用到php标签,所以需要在后台模板引擎禁用标签里面解除这个标签的禁用,具体方法: 后台——系统——系统基本参数——其它选项——模板引擎禁用标签:php 将这个PHP去掉后保存就可以了!

[二次开发]dede文章页面如何显示作者的头像

dede在文章页面显示作者只是显示其用户名,但是假如我想把dede改造成较为社交化的网站,我觉得是有必要显示作者的头像的,但是官方并没有相应的模版标签. 在网上看到解决这个问题的办法基本上是直接在模版页面调用runphp的程序段,的确这种办法是可行的. 但是我不倾向于这么做,因为很多时候我们都需要差异化的功能,每次都这样夹杂着php代码看起来很乱. 我是直接在php文件里面修改的,让文章模版可以调用几个新的标签. 找到/include/arc.archives.class.php文件 搜索"$t

搭建rtmp直播流服务之4:videoJS/ckPlayer开源播放器二次开发(播放rtmp、hls直播流及普通视频)

前面几章讲解了使用nginx-rtmp搭建直播流媒体服务器,以及使用ffmpeg推流到nginx-rtmp服务器,java通过命令行调用ffmpeg实现推流服务,后端的事情到这里就已经全部完成了. 本章讲一下播放器的选用和二次开发,前端的播放器虽然有flex(flash)可以用,但是很遗憾flex接触的并不多,学习成本又太高,那么基于第三方开源的flash播放器二次开发就显得很有必要. 一.几种播放器选择 那么播放器,哪些已经不再更新的和收费的,这里不会介绍,只介绍两种轻量级的开源播放器. 1.

【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)

作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csdn.net/shulianghan VLC 二次开发 视频教程 : http://edu.csdn.net/course/detail/355 博客总结 : -- 本博客目的 : 让 Android 开发者通过看本博客能够掌握独立移植 VLC Media Player 核心框架到自己的 app 中,

dedecms二次开发:dedetemplate.class.php 动态模板类

dedecms二次开发目录点这个:dedecms二次开发教程目录 核心类文件 include/dedetemplate.class.php 用途:用于非核心模块的动态页面或列表页的模板解析,如:member/content_list.php ,通常是在 datalistcp.class.php 中使用,这个类在动态运行的情况下,由于本身是把模板编译成PHP的,因此性能上会优级于旧的解析类,这个方法将在未来版本中作为通用的方式. 一.使用方法: $tpl = new DedeTemplate( 模

中控考勤机二次开发小记

最近公司更换了一批考勤机,但是居然无法上传和下载指纹等数据.我们的系统用的是广东一家人力资源系统,问了一下,说他们的系统不支持最新中控更新了固件的考勤机.我KAO了他NN个熊,不支持居然?特别是还要收好几千大洋的费用,问题我们还交着服务费呢?要不就在他们哪买卡机,免费给我们升级,哪还是一样吗?他们卖的考勤机可不是市场上的价格,是贵 一半的价格. 好吧, 其实要钱也不是要我给,但公司也不愿意给啊,这样的申请过不去啊.人事部也在闹,扯来扯去的.我用中控几年前发布的ZKTIME5.0这款自带的软件操作