Fecmall系统简介:
全称为Fancy ECommerce Shop,
着重于电商架构的研发优化,全新定义商城的架构体系,是基于php Yii2框架之上开发的一款优秀的开源电商系统,易于系统升级,二次开发以及第三方扩展,代码100%开源,作为一款定位于商城框架功能齐全的电商系统,您可以下载代码查看fecmall的代码结构,Fecmall开源商城是
B2C类型,不支持商家入驻(不是B2B2C,B2B2C请使用多商户版Fecbbc系统),
Fecmall支持多语言,多货币,架构上支持pc,手机web,手机app,微信小程序,和erp对接等入口,您可以免费快速的定制和部署属于您的电商系统。
详细参看地址:关于Fecmall,您可以点击这里查看Fecmall商城演示
Fecmall开源商城功能列表:
从架构,功能列表,性能测评等方面快速的了解fecmall,详细参看:Fecmall开源B2C商城功能列表
Fecmall授权协议:
详细参看地址:Fecmall授权协议
Fecmall技术支持
Terry从2015年一直维护到现在,提供技术支持,可以无后顾之忧的选择Fecmall,在电商项目中使用,详细参看:Fecmall开源项目历程时间线
Fecmall版权:
青岛飞猫科技有限公司 全力维护的开源电商产品,Terry为其提供技术支持,著作权证书如下:

前言:作为第一次接触fecmall,肯定有很多问题咨询,可以先看看下面两个问题以及回复:
1.Fecmall现在有人用于线上项目吗?可以参看地址: Fecmall 线上项目案例
2.Fecmall一系列的用户的咨询问答列表:Fecmall 各种疑问对应的回复
3.Fecmall Github地址:https://github.com/fecmall/yii2_fecmall
4.Fecmall 安装文档:http://www.fecmall.com/doc/fecmall-guide/develop/cn-1.0/guide-fecmall-about-hand-install.html
Fecmall发起人Terry:
Terry,2010年进入跨境电商行业至今,从开始的玩magento到
自建商城系统,积累了很多跨境电商业务经验,2015年开始筹划fecmall开源项目,将多年的电商经验沉淀到fecmall,方便自己的项目使用,并分享给大家,
希望fecmall抛砖引玉,可以聚集一群电商技术人士,共同学习,提升,进步。
Terry个人博客:http://www.fancyecommerce.com/
TerryCSDN博客:http://blog.csdn.net/terry_water
Fecmall QQ群:782387676,入群验证:fecmall
Fecmall开发初衷:
目前市场上开源电商系统,生态和插件体制非常好,
譬如magento,zencart,可以很快的让公司有一个属于自己的电商系统,
但当公司业务晋升,需要大量二开,甚至想重构掉原有的模块,是一件非常令人头疼的事情,
譬如把magento的购物车模块由mysql换成redis,是非常费劲的事情,
另外,自从2010年至今,随着移动端的到来,多入口模式的电商系统,
以及新的编程思想, 新的软件工具的涌现,
在开源界几乎找不到适应当今模式的开源电商系统,为了满足自己的需求,顺便方便更多的人,从2015年开始筹划开发
支持多入口模式的fecmall,一直坚持到今天,简而言之,fecmall面向的群体是程序员,而非小白。
不过,小白也做不了电商,目前没听说过那个做自营电商的公司没有程序员,
小白还是去taobao,天猫,ebay,amazon,aliexpress等平台入驻比较好,
不适合做自营网站。
注:2019年8月份,fecmall-2版本的发布,以及fecmall入驻宝塔控制面板支持一键部署,让fecmall的安装难度大大降低,动手能力强一些的小白可以基于宝塔部署fecmall。
Fecmall现状:
Fecmall-1版本默认需要安装mongodb,xunsearch,redis等太多的软件,导致安装非常费劲,为了更好的方便用户安装
,Fecmall-2版本,默认只需要安装mysql就可以了,但,这并不代表fecmall抛弃了mongodb,xunsearch,redis,
相反,Fecmall将这些存储方式,以配置的方式加入,您可以将产品分类存储由mysql切换成mongodb,购物车,session使用redis等
,为了方便小白用户安装fecmall,Fecmall-2已经入驻宝塔控制面板,可以一键安装部署fecmall,另外Fecmall应用市场上线,所有的应用都是基于Fecmall基础上的扩展包,完善生态,方便更多的用户,
目前,应用市场有免费的模板插件,中文B2C开源商用免费商城,也有付费的多商户系统,多商户分销等。
Fecmall默认支持的支付方式:
1.Paypal支付。
2.支付宝pc扫码支付,手机web支付。
3.微信pc扫码支付,手机web支付,微信公众号JsApi支付。
Fecmall商城领域应用范围:
对于fecmall,很多人看到了演示,会先入为主的定性fecmall为做跨境电商,其实这是错误的,fecmall的定位是做一个电商框架,基础功能齐全
,重在架构体系,因此,作为基础设施定位的fecmall,是可以做任意商城的,国内国外商城都可以做,基础上面进行扩展即可,
,fecmall应用市场的所有的应用,都是以独立扩展包的方式进行开发发布,因此具体领域的电商,可以在应用市场找到相应的扩展,
如果您做跨境电商,建议您在应用市场找模板使用,譬如:http://addons.fecmall.com/75268544
,如果您是做国内电商B2C,可以用fecyo中文B2C开源商城,非常适合做国内的点商户,并且商用免费授权,详细参看:http://addons.fecmall.com/27944278
,如果您做国内的多商户,可以使用fecbbc多商户系统(付费授权),详细参看:http://addons.fecmall.com/42575492
, 如果您做国内的多商户分销,可以使用fecbdc多商户分销系统,详细参看:http://addons.fecmall.com/33239568
Fecmall代码文件下载:
php已经告别了下载库包安装的时代,现在都是基于composer进行库包管理,fecmall的下载
是基于composer的方式,详细参看: fecmall 安装
,文档的安装部分查看,如果您不熟悉composer,那么您需要好好学习了,
由于composer有时候被墙,因此,我们提供了百度网盘压缩包,下载地址为:
http://pan.baidu.com/s/1hs1iC2C
,不过我们不推荐这种方式。强烈推荐使用composer 下载fecmall代码文件。
Fecmall环境搭建:
Fecmall-2.x版本:(2019-08-01发布)
在用户体验进行了提升,默认只需要php, mysql, nginx,如果您有性能需要,可以通过配置的方式添加mongodb,reids,xunsearch
>等工具进行扩展(很多模块进行了多种数据库实现,您只需要后台配置相应的services即可),
Fecmall-2.x 已经入驻宝塔控制面板支持一键部署,小白安装fecmall的福音,详细参看: Fecmall-2.x 宝塔安装
Fecmall-1.x版本:
Fecmall需要安装的软件比较多,需要php, mysql, nginx, mongodb, redis, 如果您
做中文,还需要安装中文的搜索引擎xunsearch。我们提供了详细的在linux下面搭建的
步骤:Fecmall 环境部署
, 对于该步骤配置过程比较繁琐,因此,我们强烈建议您使用docker compose来
搭建Fecmall的环境,安装过程比较快捷,详细参看:
https://github.com/fecmall/yii2_fecmall_docker
Fecmall技术论坛:
在这里可以提问Fecmall安装开发扩展过程中,出现的bug,
您认为的优化,新功能的分享等等,详细参看地址:Fecmall论坛
Fecmall系统安装:
请参看安装文档:Fecmall安装文档
,Yii2的安装是基于Composer在线安装的,如果您的网络被墙了,
文档里面有百度网盘下载完整文件包。
Fecmall-2.x开发文档:
Fecmall 安装开发文档【撰写完成】
,这里是Fecmall安装,开发的一系列的文档,比较详细,您可以详细参看该文档
Fecmall-1.x开发文档:
Fecmall 安装开发文档【撰写完成】
,这里是Fecmall安装,开发的一系列的文档,比较详细,您可以详细参看该文档
Fecmall帮助文档:
Fecmall 使用帮助文档【撰写完成】
里面有fecmall的功能的介绍,以及相应的视频,帮助您更好的了解fecmall的设置。
Fecmall DEMO演示:演示地址如下:
参看:http://www.fecmall.com/yanshi
Fecmall 多入口
Fecmall的底层功能是在Servcies层实现,
各个入口调用Servces里面的方法实现自己的逻辑,目前Fecmall的规划是6个入口:
appadmin:后台端,在后台可以编辑产品查看订单等一系列的客服和编辑执行的部分
appfront:前台PC端,电脑浏览器访问前端的部分,适用于pc电脑端
apphtml5:前台WAP端,html5做的部分,适用于移动浏览器设备
appserver:前台服务端,该端口提供api,适合于做前后端彻底
分离的应用,譬如:手机app,VUE类似的应用。目前已经支持的入口:VUE,微信小程序
appapi:和第三方进行数据交互端,在该端口可以将fecmall系统的数据传递给其他
的系统,譬如将订单传递给ERP,利用产品刊登工具刊登产品等。
console:在服务器后台执行批量线下脚本端
Fecmall商城支持场景
1.PC端浏览器商城入口,适合电脑计算机浏览器访问
2.Wap手机web端,Html5方式,可以使用手机浏览器,以及微信公众号商城
3.Wap手机web端,VUE方式,可以使用手机浏览器,以及微信公众号商城
4.微信小程序,可以做微信小程序商城。
Fecmall 贡献者:
Fecmall在开发到现在,虽然大多数代码是由Terry一人编写的,
但是,有很多的问题经过了别人的帮助,在这个页面可以参看详细:
贡献者
Fecmall 时间线:
Fecmall的开发历程
Fecmall 如何学习:
Fecmall的入手门槛稍微有点高,但也不难,需要您了解熟悉Yii2框架,
最好是熟悉Linux操作(非必须),能力弱一些的可以使用宝塔控制面板一键部署fecmall-2.x
,只要您肯花费时间,是没有问题的,
Fecmall文档非常的详细,再加上去google搜索,基本没有问题的,在有问题,可以去论坛发帖,
100%回帖。
Fecmall 架构特色:
Fecmall 全称为Fancy ECommerce Shop,是一款优秀的开源电商系统,遵循BSD-3-Clause协议(和Yii2框架一样的开源协议),
目的是为了方便yii2用户快速的
开发商城,Fecmall作为一款可以持续性发展的商城系统,
在框架层面有以下特性:
由于商城系统的复杂性,原始的框架MVC结构,显的有点力不从心,Fecmall框架
加入了Block层,
Controller层只负责调度, Model只负责数据库映射,中间的处理逻辑由block来完成,View层
负责显示,这样各司其职, 以免造成controller文件过于庞大。
加入独立功能块,有点类似Yii2的Widget,目的是为了让一些侧栏公用块
可以通过配置的方式
添加,同时,还可以具有设置缓存的功能,譬如分类侧栏的产品推荐,
newsletter等独立显示块可能在很多
页面用到,通过独立功能块可以配置方便的载入。
在Model层的上层加入服务层Services,这样,Controller,Block,View 层,在原则上
不能直接调用model,必须通过Services层以及子Services层,然后Services访问各个
model,然后组织处理数据,
将数据结果返回给上层,这种设计可以方便以后业务
发展后,进而根据业务特点进行重构,或者以后如果出现新技术,新方式,
都重构成自己想要的样子,譬如,
将某个底层由mysql换成mongodb,或者为了应付高并发读写并且多事务性的功能部分,
进行分库分表的设计方式。
另外,作为一款强扩展性的商城,产品,分类等services部分,实现了mongodb和mysql两套services,用户可以在后台配置切换不同的底层存储,
以及cart services,通过配置将mysql cart切换成redis cart,Service是公用层,前端pc,h5,小程序等入口公用services,
Service是懒加载模式,用到的时候才会实例化单例模式对象,无论在应用扩展,开发重构,代码开发,性能加速等方面,services都是一把利器,Fecmall services的实现方式参考了Yii2的组件原理。
Fecmall多模板系统,Fecmall设置了多个模板路径,各个模板路径下的文件被加载
的优先级不同,其中,Fecmall的模板路径下的文件最全面,但是优先级最低,
,第三方模板路径优先级其次,用户本地模板路径优先级最高,
用户可以通过
复制相应路径下的view或者js,css文件到本地模板路径,存在于高优先级
模板路径的文件会被优先加载,这样用户可以通过多模板系统的原理进行模板的
制作,同时,不影响Fecmall模板的升级,如果Fecmall view文件升级后被修改,
那么用户可以比对本地模板文件与升级模板文件的代码的不同,
复制更改的代码到本地模板路径
即可。第三方的模板路径的优先级介于本地模板路径和Fecmall
模板路径之间。
重写机制,Fecmall的功能基本都可以被用户重写,包括servies层,Modules,
Controller,Block,Views,View Layout,
以及Js Css Img等,都可以被用户重写,其中 Js,Css,Img,Views,View Layout
是通过多模板
路径优先级来实现的,其他的是通过配置文件的覆盖更改来实现重写,这样,用户
就可以很方便重构Fecmall或者第三方的功能和模板。
升级最小化干扰,Fecmall的核心文件是放到vendor/fancyecommerce/fecmall
路径下面,和第三方扩展,用户二次开发路径完全隔离开,
Fecmall可以通过composer进行核心功能的升级,用户只需要通过composer升级
即可。
快速高效,Fecmall Servises遵循Yii2的懒加载方式,只初始化使用到的组件服务,
缓存方面有整页缓存,block部分缓存,动态数据ajax加载等方式,让您的网站快速响应。
Fecmall 多入口模式,分为 appadmin(后台), appfront(PC前端),apphtml5(手机web),
appserver(手机app服务),appapi(erp,或者其他接口对接),
不同的业务,不同的设备,进入不同的入口,各个入口共用服务层services,
但是modules部分独立,这样相互干扰最小,可以相互独立开发。
后台封装化,fec_admin扩展可以快速的实现增删改查类型的表单列表,
方便用户快速的做增删改查。
鉴于以上特点,您可以下载安装Fecmall,然后更改Fecmall的模板和功能,扩展自己想要
的功能,或者安装第三方开发好了的扩展或者模板,来快速的组建起来您的网站。
如果有更多的疑问,您可以在论坛发帖咨询问题,只要发帖,肯定回帖。