Error message

Warning: unlink(/var/www/fliegen.com.tw/sites/default/files/css/follow.css): Permission denied in drupal_unlink() (line 2308 of /var/www/fliegen.com.tw/includes/file.inc).

Drupal Commerce 2.0 正式版發行 - 關鍵功能概覽

 

Drupal Commerce 在昨天發佈了 2.0 的正式版本。在此之前,我們已經累積了一些使用與開發的經驗並參與討論,看到正式版本上線,是十分令人振奮的消息。

Drupal 7 時代的 Drupal Commerce

Drupal 7 版本推出以來,我們曾經使用 Drupal Commerce 為客戶開發不同形式的線上商店。

當時有許多以 Drupal Commerce 為核心開發的外掛功能,例如 Commerce DiscountCommerce ShippingCommerce Extra Pane ...等都是在電商網站裡不可或缺的工具。

Drupal Commerce 提供的新功能

Drupal Commerce 為 Drupal 8 所開發的 2.0 版本已經正式發佈,在這個新開發的版本裡,納入了許多重要的工具,不少原本是外掛的功能,也都加入了 Drupal Commerce 2.0。

以下將介紹一部分新加入 Commerce 核心的關鍵的功能。

  1. Commerce Store Commerce 的一大改變就是加入了商店功能,網站管理者可以建立多個商家,各個商家也可以指定不同的消費貨幣。

  2. Commerce Promotion 對於行銷功能來說,折扣與折價券的功能是相當重要的,以往分開在 Commerce Discount 跟 Commerce Coupon 的外掛功能,現在進入核心成為 Commerce Promotion。

  1. 地址簿 Commerce 會整理在結帳過程中的顧客地址資訊,提供成為使用者的地址簿。不過,想要讓使用者在結帳過程中直接選擇已經存在的地址資料還來不及在 2.0 發佈的時候完成,目前仍在繼續開發當中[1]。

  2. 訪客結帳 D7 版本可透過 Commerce Checkout Login 允許使用者在結帳過程中,利用一個額外的區塊進行登入。現在,Commerce Checkout 能在設定結帳流程中來管理使用者登入或是以訪客結帳。 而在訪客結帳完後,目前還無法直接註冊為商店使用者。有一個新功能仍在實作當作,未來將能讓訪客結帳後直接註冊為使用者[2]。

  1. Commerce Checkout Commerce Checkout 現在可允許管理者輕鬆管理結帳流程,不同的訂單型態,可以配合不同的結帳流程選擇需要填寫的資料。
    舉例來說,當有需要運送服務的訂單類型,才在結帳流程當中顯示收件人地址資料。若提供的是服務或是數位商品,則可建立另一種結帳流程。

  2. 訂單流程 在 Commerce 1,訂單擁有 status 與 state,訂單處理的狀態只能是順序性的。然而,Commerce 2.0 中,訂單只有 states,在每個訂單型態中,有不同的處理流程,讓訂單能在不同 states 轉換。對開發者來說,能更簡單的在 yaml 檔中定義 workflows。

開始試試 Drupal Commerce 2.0 吧

2.0 版本的 Drupal Commerce 已經可以在 Drupal.org 下載。如果你想要參與開發,現在需要到 GitHub Repository 查看最新的原始碼。

Drupal Commerce 2.0 會相容於 Drupal 8.4 版本。如果先前已經嘗試使用 RC1 的版本,想要升級 Drupal 8.4 ,以及最新的 Commerce 2.0 版本,建議要逐步從 Commerce RC2 升到 2.0 正式版,再將 Drupal 升級[3]。

後續將會有更多的改進與新功能,我們會分享更多 Commerce 的使用經驗與想法。


[1]: 相關討論: Expand the commerce_profile_select form element with the ability to reuse profiles

[2]: 新功能討論: Implement registration after guest checkout.

[3]: 問題回報討論: Error while updating to Drupal 8.4