# M2是什么
Magento就不用多介紹了,我之前在Magento2開發者論壇里寫了一篇[老鄒說Magento的前世今生](//bbs.mallol.cn/?thread-119.htm)。算是非常詳細了,大家有空可以看看。
M2分為商業版(EE)和社區開源版(CE)。
我們基本上90%用的是社區開源版。
商業版是收費的,并且很貴,那些大品牌公司才買,其實功能跟社區版差不多,80%的功能是相同的,所以我們不需要糾結用哪個版本。
用社區免費版就足夠了。
Magento 2.0是2015年正式上線的,采用了最新的架構。
更新后的平臺包含了新的API,使開發者能夠更加簡單地整合新的現代化的服務,甚至根據當前的需求來關注支付系統的微調,從而實現轉化的最大化。
新系統的缺點是,如果你想從主流的Magento1.x版本升級到2.0,幾乎是不可能的,你不得不重寫一切代碼。
數據庫可以用工具轉換成M2的,但是,1.x的主題和擴展是轉換不了的,必須重寫代碼。這算是比較坑爹的地方。
1.x跟2.x相當于是2套獨立的系統了,不是簡單的升級關系。
M2建立了一套現代化的技術,大大方便了開發工作,也使得網店的運行速度更快:
PHP 7
Varnish(整個頁面緩存更快速的使用)
Redis
更現代JS棧(requirejs + knockout)
RabbitMQ (這個在2.3.x里都有,2.3.x以下版本只在商業版有)
Solr (這個在商業版里才有)
PHPUnit
Composer
用戶體驗也有所改善:在查看訂單時,您還可以看到每個產品的圖片,結賬變得更加快捷簡單(已經減少到只有2步)。
此外,該系統還支持一些尚未整合的支付系統(WorldPay,Cyber??Source,Authorize.Net)。
當然這只是冰山一腳,更多的功能等待你去挖掘。
雖然看起來比較復雜,有300多張表,但是他本質上還只是一個b2b商城,就是一個賣東西的網站系統。
> 萬物之始,大道至簡,衍化至繁
復雜的功能都是在簡單的內核里擴展出來的。
所以看似這么多功能,都是通過插件來擴展出來的,其實很多功能都用不到,我們不需要把他所有功能都搞清楚,只需要搞清楚常用的核心功能就夠了。
常用的核心功能無非就是
1. 上傳產品
2. 用戶注冊登錄
3. 購買下單
4. 發貨 退貨
5. 優惠券促銷
如果你熟悉1.x后,再接觸2.x, 會非常不適應。思想觀念很難改過來。
比如:
2.x基本上都是用命令行工具來更新系統(比如創建用戶/安裝插件/禁用插件/代碼編譯/備份/回滾等等),但是1.x沒有這個命令行。
2.x安裝都是用composer包管理工具來自動安裝,但是1.x沒有composer,只能下載源代碼解壓安裝,并且1.x的插件的js/css/圖片都是分開的,不在插件目錄下。
2.x都是用namespace來寫類,但是1.x沒有namespace。
等等,還有很多不同。
具體的可以看看我以前寫的 [Magento1與Magento2的區別](http://bbs.mallol.cn/?thread-83.htm)
如果你沒接觸1.x的話,相當于一張白紙,會更容易接受M2的這些設計,其實這些設計在PHP其他框架里都差不多的,比如最有名的Laravel。
**社區版與企業版功能對比:**


## 社區版和企業版自帶的模塊說明見:
[https://devdocs.magento.com/guides/v2.3/mrg/ce/AdminAnalytics.html](https://devdocs.magento.com/guides/v2.3/mrg/ce/AdminAnalytics.html)
- 序言
- 全面解讀Magento2
- Magento2簡介
- Magento2特點
- Magento2目錄結構
- Magento2語法講解
- 運行原理剖析
- 開啟Magento2之旅
- 安裝Magnto2
- 購買阿里云服務器(Ubuntu系統)
- 安裝和配置Nginx/PHP/PHP-FPM
- 配置Mysql并創建數據庫
- 配置Nginx虛擬主機
- 安裝和配置Magento2
- 導入演示數據
- 手把手教你創建git代碼庫
- 續外篇-購買AWS服務器
- 續外篇-Mac下安裝LNMP
- 續外篇-安裝phpmyadmin
- 如何升級php版本
- 使用Magento2
- 創建多網店多域名以及安裝中文語言包
- 創建獨立cms頁面
- 創建分類和產品
- 創建產品屬性
- 創建優惠券
- 導入產品csv
- 下單/發票/發貨/退貨
- M2常用命令
- 如何安裝主題
- 如何安裝插件
- 如何使用API
- 常見問題
- 常見問題 二
- 常見問題 三
- 常見問題 四
- 常見問題 五
- Magento2主題
- 主題框架詳解
- Layout文件詳解
- M2里的JS
- 主題實戰
- 前期準備工作
- 完成首頁
- 重寫分類頁面
- 錦囊妙計
- 產品詳情頁面講解
- 購物車頁面講解
- 支付頁面講解
- 主題修改記錄
- 關于主題的一些學員問答
- Magento2插件
- 插件框架詳解
- XML配置說明
- 插件實戰
- 準備工作
- 寫代碼
- 調試
- 難點解析
- 插件升級
- 插件修改記錄
- 擴展閱讀
- 如何創建cron任務和功能
- 發送郵件(帶附件)
- 如何在代碼里創建屬性
- Magento2線上部署
- 基本流程
- 配置Redis
- 配置Varnish+SSL
- Varnish配置教程(2020年修訂版)
- Paypal設置
- 一些優化
- Magento2 版本升級
- v2.3.0版本填坑指南
- v2.4.x升級指南
- 配置nginx pagespeed模塊進行加速
- M1數據庫遷移到M2指南
- 安裝配置Elasticsearch
- Magento2常用工具
- 網站測速分析工具
- 在線創建插件模塊
- M2后臺可視化編輯器里的標簽變量
- 遇到問題,我該怎么做
- 常用代碼
- SEO在線分析工具
- 本地用xdebug遠程調試mgtdev2服務器的項目
- 后續之路