当前位置: 首页 > news >正文

【多商户开源-BSD- Fecmall 电商平台】

关于Fecmall

Fecmall 关于,Fecmall介绍

Fecbbc开源BSD多商户系统,真正开源,商用免费授权的多商户系统

fecmall

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,肯定有很多问题咨询,可以先看看下面两个问题以及回复:

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个人博客:YII2 教程

TerryCSDN博客:TerryWater-CSDN博客

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开源商城,非常适合做国内的点商户,并且商用免费授权,详细参看:Fecyo - 中文国内电商商城系统(PC + H5双入口) ,如果您做国内的多商户,可以使用fecbbc多商户系统(付费授权),详细参看:Fecbbc 多商户电商系统(B2B2C) , 如果您做国内的多商户分销,可以使用fecbdc多商户分销系统,详细参看:fecbdc多商户分销扩展系统(三级分销)

Fecmall代码文件下载

php已经告别了下载库包安装的时代,现在都是基于composer进行库包管理,fecmall的下载 是基于composer的方式,详细参看: fecmall 安装 ,文档的安装部分查看,如果您不熟悉composer,那么您需要好好学习了, 由于composer有时候被墙,因此,我们提供了百度网盘压缩包,下载地址为: fecshop 下载_免费高速下载|百度网盘-分享无限制 ,不过我们不推荐这种方式。强烈推荐使用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演示:演示地址如下:

参看:Fecmall演示

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作为一款可以持续性发展的商城系统, 在框架层面有以下特性:

  1. 由于商城系统的复杂性,原始的框架MVC结构,显的有点力不从心,Fecmall框架 加入了Block层, Controller层只负责调度, Model只负责数据库映射,中间的处理逻辑由block来完成,View层 负责显示,这样各司其职, 以免造成controller文件过于庞大。

  2. 加入独立功能块,有点类似Yii2的Widget,目的是为了让一些侧栏公用块 可以通过配置的方式 添加,同时,还可以具有设置缓存的功能,譬如分类侧栏的产品推荐, newsletter等独立显示块可能在很多 页面用到,通过独立功能块可以配置方便的载入。

  3. Model层的上层加入服务层Services,这样,ControllerBlockView 层,在原则上 不能直接调用model,必须通过Services层以及子Services层,然后Services访问各个 model,然后组织处理数据, 将数据结果返回给上层,这种设计可以方便以后业务 发展后,进而根据业务特点进行重构,或者以后如果出现新技术,新方式, 都重构成自己想要的样子,譬如, 将某个底层由mysql换成mongodb,或者为了应付高并发读写并且多事务性的功能部分, 进行分库分表的设计方式。 另外,作为一款强扩展性的商城,产品分类services部分,实现了mongodbmysql两套services,用户可以在后台配置切换不同的底层存储, 以及cart services,通过配置将mysql cart切换成redis cartService是公用层,前端pc,h5,小程序等入口公用servicesService懒加载模式,用到的时候才会实例化单例模式对象,无论在应用扩展开发重构,代码开发,性能加速等方面,services都是一把利器,Fecmall services的实现方式参考了Yii2的组件原理。

  4. Fecmall多模板系统,Fecmall设置了多个模板路径,各个模板路径下的文件被加载 的优先级不同,其中,Fecmall的模板路径下的文件最全面,但是优先级最低, ,第三方模板路径优先级其次,用户本地模板路径优先级最高, 用户可以通过 复制相应路径下的view或者js,css文件到本地模板路径,存在于高优先级 模板路径的文件会被优先加载,这样用户可以通过多模板系统的原理进行模板的 制作,同时,不影响Fecmall模板的升级,如果Fecmall view文件升级后被修改, 那么用户可以比对本地模板文件与升级模板文件的代码的不同, 复制更改的代码到本地模板路径 即可。第三方的模板路径的优先级介于本地模板路径和Fecmall 模板路径之间。

  5. 重写机制,Fecmall的功能基本都可以被用户重写,包括servies层,Modules, Controller,Block,Views,View Layout, 以及Js Css Img等,都可以被用户重写,其中 Js,Css,Img,Views,View Layout 是通过多模板 路径优先级来实现的,其他的是通过配置文件的覆盖更改来实现重写,这样,用户 就可以很方便重构Fecmall或者第三方的功能和模板。

  6. 升级最小化干扰,Fecmall的核心文件是放到vendor/fancyecommerce/fecmall 路径下面,和第三方扩展,用户二次开发路径完全隔离开, Fecmall可以通过composer进行核心功能的升级,用户只需要通过composer升级 即可。

  7. 快速高效,Fecmall Servises遵循Yii2的懒加载方式,只初始化使用到的组件服务, 缓存方面有整页缓存,block部分缓存,动态数据ajax加载等方式,让您的网站快速响应。

  8. Fecmall 多入口模式,分为 appadmin(后台), appfront(PC前端),apphtml5(手机web), appserver(手机app服务),appapi(erp,或者其他接口对接), 不同的业务,不同的设备,进入不同的入口,各个入口共用服务层services, 但是modules部分独立,这样相互干扰最小,可以相互独立开发。

  9. 后台封装化,fec_admin扩展可以快速的实现增删改查类型的表单列表, 方便用户快速的做增删改查。

相关文章:

【多商户开源-BSD- Fecmall 电商平台】

关于Fecmall Fecmall 关于,Fecmall介绍 Fecbbc开源BSD多商户系统,真正开源,商用免费授权的多商户系统 Fecmall系统简介: 全称为Fancy ECommerce Shop, 着重于电商架构的研发优化,全新定义商城的架构体系&…...

2023春秋杯冬季赛 --- Crypto wp

文章目录 前言Cryptonot_wiener 前言 比赛没打,赛后随便做一下题目 Crypto not_wiener task.py: from Crypto.Util.number import * from gmpy2 import * import random, os from hashlib import sha1 from random import randrange flagb x bytes_to_long(f…...

ImageMagick使用手册

ImageMagick使用手册 文章目录 ImageMagick使用手册ImageMagick是什么指令总结1.查看版本2.官网验证指令解读3.svg转png4.png转ico5.将指定文件夹中的所有PNG图像转换为ICO图标 本教程持续更新,我学到多少就更新多少。关于ffmpeg如何安装可以看上一篇博客win系统环境…...

嵌入式培训机构四个月实训课程笔记(完整版)-C++和QT编程第五天-Qt编程技巧若干解答(物联技术666)

链接:https://pan.baidu.com/s/1-u7GvgM0TLuiy9z7LYQ80Q?pwd1688 提取码:1688 QT在Windows下制作图表 QT是跨平台的程序设计库,在windows下的程序往往想要有一个好看的图标,方法如下: 1.准备个ICO图标。例如&…...

【蓝桥杯选拔赛真题59】python小写字母 第十五届青少年组蓝桥杯python 选拔赛比赛真题解析

目录 python小写字母 一、题目要求 1、编程实现 2、输入输出...

代码随想录算法训练营Day37|738.单调递增的数字、贪心算法总结

目录 738.单调递增的数字 方法一:暴力解法 方法二:贪心解法 贪心算法总结 738.单调递增的数字 题目链接 文章链接 方法一:暴力解法 class Solution { private:// 各位递增判断函数bool checkNum(int num) {int max 10;while (num) {int …...

笔记-影响力-对比,互惠,赌徒原理

笔记 From 《影响力》 目录 C1 影响力的武器 C2:互惠 C3 承诺和一致 C4:社会认同 C5:喜好 C6:权威 C7:稀缺 Ankie的笔记:对比,互惠,赌徒原理 C1 影响力的武器 人类在认知方面有个原理,叫“对比原理”。 假设有人走进一…...

PIL、cv2、numpy,和pytorch(torch)之间的转换

在图像处理和深度学习中,经常需要在PIL(Python Imaging Library)、OpenCV(cv2)、NumPy和PyTorch之间进行图像数据的转换。下面是这些库之间常见的转换方法。 1. PIL和numpy之间的转换 import numpy as np from PIL i…...

Java面试题50道

文章目录 1.谈谈你对Spring的理解2.Spring的常用注解有哪些3.Spring中的bean线程安全吗4.Spring中的设计模式有哪些5.Spring事务传播行为有几种6.Spring是怎么解决循环依赖的7.SpringBoot自动配置原理8.SpringBoot配置文件类型以及加载顺序9.SpringCloud的常用组件有哪些10.说一…...

电脑怎么剪辑视频?这些软件不可错过

电脑怎么剪辑视频?随着视频时代的到来,越来越多的人开始涉足视频制作。从Vlog到短片,再到专业级的影视作品,视频已经成为了我们生活中不可或缺的一部分。那么,如何才能快速掌握视频剪辑技巧,制作出令人惊叹…...

HBase学习七:Compaction

1、简介 Compaction是从一个Region的一个Store中选择部分HFile文件进行合并。其目的为了减少 HFile 的个数跟清理掉过期和删除的数据。 合并原理是,先从这些待合并的数据文件中依次读出KeyValue,再由小到大排序后写入一个新的文件。之后,这个新生成的文件就会取代之前已合…...

MySQL定期整理磁盘碎片

MySQL定期整理磁盘碎片:提升数据库性能的终极指南 MySQL作为一个强大的关系型数据库管理系统,在长时间运行后可能会产生磁盘碎片,影响数据库性能。本博客将深入讨论如何定期整理MySQL磁盘碎片,以确保数据库的高效运行。我们将介绍…...

【centos7安装docker】

背景: 学习docker,我是想做一个隔离环境,并且部署的话,希望实现自动化,不为安装软件而烦恼,保证每个人的环境一致。 2C4G内存 50G磁盘的虚拟机事先已经准备完毕。 1.查看下centos版本,docker要…...

四、Flask学习之JavaScript

四、Flask学习之JavaScript JavaScript,作为一种前端脚本语言,赋予网页生动的交互性和动态性。通过它,开发者能够操作DOM(文档对象模型)实现页面元素的动态改变、响应用户事件,并借助AJAX技术实现异步数据…...

IO 专题

使用try-with-resources语句块,可以自动关闭InputStream [实践总结] FileIUtils 共通方法最佳实践 [实践总结] java 获取在不同系统下的换行符 [实践总结] StreamIUtils 共通方法最佳实践 斜杠“/“和反斜杠“\“的区别 路径中“./”、“…/”、“/”代表的含义…...

MySql索引事务讲解和(经典面试题)

🎥 个人主页:Dikz12🔥个人专栏:MySql📕格言:那些在暗处执拗生长的花,终有一日会馥郁传香欢迎大家👍点赞✍评论⭐收藏 目录 索引 概念 索引的相关操作 索引内部数据结构 事务 为…...

《微信小程序开发从入门到实战》学习九十一

7.1 视图容器组件 7.1.2 scroll-view组件 scroll-view组件时是滚动的视图容器,可在竖直方向或水平方向上滚动,展示超出屏幕高度或宽度的内容。 使用竖直方向滚动时,需要通过wxss的height样式给scroll-view设置一个固定高度,超出…...

【立创EDA-PCB设计基础】6.布线铺铜实战及细节详解

前言:本文进行布线铺铜实战及详解布线铺铜的细节 在本专栏中【立创EDA-PCB设计基础】前面完成了布线铺铜前的设计规则的设置,接下来进行布线 布局原则是模块化布局(优先布局好确定位置的器件,例如排针、接口、主控芯片&#xff…...

Node.JS CreateWriteStream(大容量写入文件流优化)

Why I Need Node.JS Stream 如果你的程序收到以下错误,或者需要大容量写入很多内容(几十几百MB甚至GB级别),则必须使用Stream文件流甚至更高级的技术。 Error: EMFILE, too many open files 业务场景,我们有一个IntradayMissingRecord的补…...

安卓开发之自动缩放布局

AutoScalingLayout 适用于 Android 的自动缩放布局。 替换布局: 我们只需要替换根布局所需的自动缩放,子布局也将实现自动缩放。 原始布局AutoScalingLayout相对布局ASRelativeLayout线性布局ASLinearLayoutFrameLayout(框架布局&#xff…...

DDD系列 - 第9讲 实体、值对象

目录 引言一、实体1.1 数据库实体1.2 数据库实体 vs. DDD实体1.3 DDD实体的本质及其识别规则1.4 代码中如何定义实体二 、值对象2.1 值对象 vs. 附属属性2.2 值对象 vs. 实体2.3 代码中如何定义值对象2.4 何时使用值对象引言 之前我在《DDD系列 - 第4讲 从架构师的角度看待DDD…...

5分钟做自己的微信红包封面

文章目录 怎么制作自己的红包封面?开通红包封面的要求如下:收费情况制作具体网站:https://chatapi.onechat.fun/register?affYoU6 提交审核logo封面、挂件、气泡证明材料 发放红包封面其他 怎么制作自己的红包封面? 开通红包封面…...

pytorch中BCELoss 和 binary_cross_entropy_with_logits之间的区别

在PyTorch中,binary_cross_entropy_with_logits是一个函数,而BCELoss是一个类。它们都是用于二分类任务的损失函数。它们之间存在一些区别如下。 torch.nn.functional.binary_cross_entropy_with_logits: binary_cross_entropy_with_logits…...

无刷电机学习-方波电调 程序篇1(AM32)

一、AM32简介 AM32 固件专为 ARM 处理器设计,用于控制无刷电机 (BLDC)。该固件旨在安全、快速、平滑、快速启动和线性油门。它适用于多种车辆类型和飞行控制器。 AM32具有以下特点: 可通过 betaflight 直通、单线串行或 arduino 升级固件伺服 PWM、Dsh…...

如何自己制作一个属于自己的小程序?

在这个数字化时代,小程序已经成为了我们生活中不可或缺的一部分。它们方便快捷,无需下载安装,扫一扫就能使用。如果你想拥有一个属于自己的小程序,不论是为了个人兴趣,还是商业用途,都可以通过编程或者使用…...

HTML 入门手册(二)

目录 HTML 入门手册(一) 10-表单 11-input标签 11.1文本框 (text) 11.2密码框 (password) 11.3单选按钮 (radio) 11.4复选框 (checkbox) 11.5普通按钮 11.6提交按钮 (submit) 11.7重置按钮 (reset) 11.8隐藏域 (hidden) 11.9文件上传 (file) 11.10数字输入 (numbe…...

零基础学Python(5)— 基本数据类型

前言:Hello大家好,我是小哥谈。在内存中存储的数据可以有多种类型。例如:一个人的姓名可以用字符型存储,年龄可以使用数值型存储,婚姻状况可以使用布尔型存储。这里的字符型、数值型、布尔型都是Python语言中提供的基本…...

centos7安装Redis7.2.4

文章目录 下载Redis解压Redis安装gcc依赖(Redis是C语言编写的,编译需要)编译安装src目录下二进制文件安装到/usr/local/bin修改redis.conf文件启动redis服务外部连接测试 参考: 在centos中安装redis-5.0.7 Memory overcommit must…...

certificate-transparency-go用例

文章目录 证书的SCT列表验证SCT依赖包加载证书初始化log机构信息离线验证在线验证 证书的SCT列表 浏览器对证书链的合法性检查通过后,会再检查服务端证书附件里的SCT列表(Signed Certificate Timestamp); 浏览器内置了一批certif…...

前端上传大文件使用分片上传

前提:分片上传针对于一些大的文件、普通大小的文件使用element中的上传组件可以实现效果,例如几G的文件就会比较卡,所以这时候就需要用到分片上传~ 前端及后端分片上传笔记 效果:(上传进度展示) 效果:(上传成功的效果展示) 1、 新建一个上传组件 2、使用vue-simple-…...