本人是Drupal的粉絲,電子商務平臺也用Drupal開發過幾個,真心感覺Drupal的強大。Drupal的電子商務平臺比較常用的是 Commerce 和 Ubercart,現在本人以個人觀點對這兩個進行對比,給在選擇哪個做電商的同學一些參考。
歡迎程度
Commerce
自從誕生以來,一直是上升趨勢。目前超過四萬安裝量。目前看起來在D7下,Commerce以微弱優勢領先。
Ubercart
一直表現平穩。安裝量超過四萬??紤]到Ubercart支持D6與D7;在D6下,Ubercart地位無可撼動。
產品管理
Commerce
充分利用Drupal 7的entity,產品Entity花,并于Node解耦,SKU與單個產品綁定;不同產品屬性可以通過不同的SKU來管理,這與實際的產品管理相符合,大大提升了系統的靈活性與擴展性。(比如針對特定SKU的折扣,庫存管理等)在初期,這種方式對用戶造成使用上的困擾,并為ubercart支持者所詬病。但是inline entity form模塊的橫空出世,這個問題已經不再是個問題。
Ubercart
產品即Node,產品屬性等只是自身的一個數據集,擴展性方面不如Commerce好。
運輸與支付
Commerce
本身不帶運輸模塊,需要第三方模塊支持。
Ubercart
核心自帶運輸模塊。
學習曲線
Commerce
學習成本比Ubercart高。但是既然已經選擇Drupal了,這點自然不在話下了。
Ubercart
學習成本,或者說易用性方面勝出。
相似性
Commerce
對第三方模塊的依賴,后臺管理,網店配置大同小異。
Ubercart
對第三方模塊的依賴,后臺管理,網店配置大同小異。
第三方模塊依賴
Commerce
Address Field, CTools, Entity API, Rules and Views.
Ubercart
CTools, Entity API, Rules, and Views
配置性
Commerce
大多數情況下,默認配置即可使網店運轉。支付方式,價格計算,貨幣等需要自定義配置。
Ubercart
默認配置完美工作,可以修改地址,貨幣,聯系人等。
使用場景
Commerce
產品系列差異化比較大,并追求可持續擴展的網店。
Ubercart
產品差異化不大的網店。
文檔支持
Commerce
更勝一籌,與Druapl API關聯更好
Ubercart
也不錯,但是有些方面不足。
長期展望
Commerce
設計之初及考慮未來的擴展性;長期看來,功能會有進一步的增強,易用性方面也會有所改善。
Ubercart
設計上限制了不適合大規模網店采用,將來可能過時。(來源于翻譯,勿噴我)
擴展
Commerce
Ubercart
其他
Commerce
D8支持
Commerce的2.x分支是面向Drupal8的版本,分支已經建立,不過暫時無代碼。
根據這個roadmap,開發工作是早就開始了,但是還沒有提交到D.O,或許是因為保密原因,或者其他原因。。
Ubercart
Ubercart的4.x分支是面向Drupal8的版本,正在緊鑼密鼓進行中。
這里可以看到有很多代碼的提交。
總結
Commerce的作者也是以前Ubercart的主要程序員。
Commerce的發展,帶來了一系列福利模塊,比如address field, inline Entity form,inline conditions等,目前這些模塊的使用范圍已經超過了電商范疇。
Commerce在靈活性與擴展性方面較之Ubercart有后發優勢。雖然Commerce的發展與Commerce guys賣力推廣不無關系,但是自身的設計構架也值得肯定。
在Drupal 7下面,我們可能看不到Commerce與Ubercart分出勝負的時刻。二者之間的競爭會在Drupal 8下繼續進行,讓我們拭目以待。
就我在寫本文調研過程中,發現Commerce的支持大大多于Ubercart。筆者亦站在大多數人的立場,支持Commerce。
更多信息請查看IT技術專欄