Commerce

Commerceモジュール

Docmmerce 2.x ドキュメント

https://docs.drupalcommerce.org/commerce2

インストール

https://docs.drupalcommerce.org/commerce2/developer-guide/install-update/installation

 

Commerceの機能拡張モジュールをインストール

composer require 'drupal/commerce_shipping:^2.0'

composer require 'drupal/commerce_recurring:^1.0'

Swift Mailer module: composer require drupal/swiftmailer

Mail Systemの設定 /admin/config/system/mailsystem

Swift Mailerの設定 admin/config/swiftmailer/transport

 

メンテナンス、アップデイトなど

Drupal Commerceと関連モジュールの更新: composer update --with-dependencies "drupal/commerce*"

Drupal Commerceだけの更新: composer update --with-dependencies drupal/commerce drupal/commerce_price drupal/commerce_product drupal/commerce_order drupal/commerce_payment drupal/commerce_payment_example drupal/commerce_checkout drupal/commerce_tax drupal/commerce_cart drupal/commerce_log drupal/commerce_store drupal/commerce_promotion drupal/commerce_number_pattern

もしくは、 composer update drupal/commerce --with-dependencies

サイト全体(Drupal Core、Commerceも含めた拡張モジュールなどすべて): composer update

もし、アップデイトで失敗したら、

composer why-not

composer remove   composer require

composer.lock   composer install

composer clear-cache

composer self-update

Commerceの削除は composer remove drupal/commerce

パッチの適用方法https://docs.drupalcommerce.org/commerce2/developer-guide/install-update/patching

 

Demoサイト

An examples module for Commerce 2.x. Provides some usually defaults and a sample migration.  https://github.com/mglaman/commerce_examples

 

 

Commerceの初期設定

環境:Drupal 8.7.8  Commerce 8.x-2.14

最初の設定

ストアの設定

1)通貨の設定

通貨(日本の円)を追加 admin/commerce/config/currencies

 

2)ストアの作成

admin/commerce/config/stores ストアを追加  ストア名称 デフォルト通貨 請求サポート国 TAX設定(税込み/defaultは税抜き) URLエイリアス

デフォルトのストアを変更

 

3)プロファイルの設定

admin/config/people/profile-types  顧客の編集 Tax Mumberや住所などを修正

 

4)マシンの状態(State Machine) 

コード指向のワークフロー機能がYML形式でフォーマットされている

 

5)インライン エンティティ フォーム

Inline Entity Formを使っています  https://www.drupal.org/project/inline_entity_form 

 

6)条件(Conditions)

注文(orders)では3つのカテゴリーで条件があり、プロモーションと支払いゲートウェイで以下の条件を構成されています。

・Customer
  Customer role
  Customer email
  Billing address

・Order
  Current order total
  Order currency
  Selected payment gateway (available for Promotions only)
  Store
  Order type

・Products
  Order contains specific products
  Order contains product categories
  Order contains product types
  Order contains product variation types
  Total discounted product quantity (available for Promotions only)

さらに、注文アイテム(order item)には以下の条件で設定されています。

Specific products
Product categories
Product types
Product variation types

 

7)リゾルバーを理解する

Drupal Commerceでのリゾルバーとは、複雑な質問に対する答えを提供するサービスです。たとえば、「この製品の価格は?」「注文からチェックアウトまでの工程は?」などです。

価格のリゾルバ: たとえば、ホーム-> MyProduct->Variations の価格など

お店のリゾルバ: たとえば、 お店(store)のDefaut設定、デフォルトは1つのお店だけです。もし、マルチストアのサイト(複数のお店があるモールのようなサイト)ではStoreResolverをカスタマイズする必要があります。詳しくは https://docs.drupalcommerce.org/commerce2/developer-guide/stores/resolve-current-store

チェックフローのリゾルバー: デフォルトはシングルチェックアウトフローだけですが、複数のチェックアウトフローを設定できます。 admin/commerce/config/order-types で checkout flow をDefaultに設定します。

その他のリゾルバー: Country ロケール 注文タイプ タックスレート

リゾルバーの構造: 特別なリゾルバーをChain resolverと言います mystore/web/modules/contrib/commerce/src/Resolver

サービスタグ: すべてのリゾルバーはサービスとなり、Chain resolverはサービスコレクターとよばれます。サービスタグの詳細は https://www.drupal.org/docs/8/api/services-and-dependency-injection

サービスタグのリゾルバーとサービスタグ

CheckoutFlow commerce_checkout.checkout_flow_resolver
Country    commerce.country_resolver
Locale     commerce.locale_resolver
OrderType   commerce_order.order_type_resolver
Price      commerce_price.price_resolver
Store     commerce_store.store_resolver
TaxRate    commerce_tax.tax_rate_resolver

 

備考: Apply a VAT rate on a product with Drupal Commerce 2 https://www.flocondetoile.fr/blog/apply-vat-rate-product-drupal-commerce-2

Working with the Drupal Commerce 2 checkout flows  https://www.flocondetoile.fr/blog/working-drupal-commerce-2-checkout-flows

Implementing a Checkout Flow resolver in Drupal Commerce 2.0  https://glamanate.com/blog/implementing-checkout-flow-resolver-drupal-commerce-20

 

8)通貨

参考: Commerce 2.x Stories - Internationalization https://drupalcommerce.org/blog/15916/commerce-2x-stories-internationalization  Internationalization Library https://github.com/commerceguys/intl

通貨、例えば日本の円を追加 admin/commerce/config/currencies

 

9)データベースのモデリング

 Drupal Commerce 2.x のモデリング図 https://www.dx-experts.nl/blog/2017/commerce-2-entity-relations-including-shipping

 

10)価格のフォーマット

価格の表示形式は複数あり、表示はTwigで行います。フィールド形式は、プレーン、デフォルト、計算済み価格(たとえば、キャンペーンなどで調整された場合)

 

製品の設定

製品と製品のタイプ

Tシャツ 製品タイプ
サイズ  製品の属性 
色    製品の属性
それぞれのTシャツの製品タイプには、色とサイズのバリエーションがあります。

製品 TシャツA サイズ Large  色 グリーン

製品 TシャツA  サイズ Medium  色 ブルー.......

製品のバリエーションと製品バリエーションのタイプ

 

製品の属性と製品属性の値

 

製品SKU: SKU(Stock Keeping Unit) 在庫管理を行う場合の単位。 アイテムは商品の種類を指すが、SKUは同じ商品でもパッケージの違いや値段の違いなど、アイテムより小さい単位で分類される。 商品の最小識別単位。

SKU BEST PRACTICES FOR ONLINE SHOPPING SITES: http://andrewbrettwatson.com/index.php/help/187-sku-best-practices-for-online-shopping-sites

 

製品情報の構造

 

 

 

製品の登録

 

受注

受注の作成

受注を参照

受注管理

受注ワークフロー

受注プロセス、検証など

受注の領収書、ストアからの通知Emailなど

 

支払い

支払い認証の登録許可

認証の無効

認証のキャプチャー(確認)

支払いの返金(Refund)

支払いの管理

 

プロモーション

 

 

 

 

エラーが起きた場合

Drupal 8のコアを更新した際に、エラーが起こる:

PHP Fatal error: Interface 'CommerceGuys\\Addressing\\AddressInterface' not found.....

以下のサイトを参考に:

Composerでモジュールを削除、入れ替えする

composer remove commerceguys/addressing

composer require drupal/address

もしくは、addreessモジュールを削除して、入れ替える

composer require 'drupal/address:^1.4'

 

Commerce 2.0 TaxTypes

SwissVat.php を参考にしました。

   .../web/modules/contrib/commerce/modules/tax/src/Plugin/Commerce/TaxType/JapanVat.php

 

<?php

namespace Drupal\commerce_tax\Plugin\Commerce\TaxType;

use Drupal\commerce_tax\TaxZone;
use Drupal\Core\Form\FormStateInterface;


class JapanVat extends LocalTaxTypeBase {

  
  public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
    $form = parent::buildConfigurationForm($form, $form_state);
    $form['rates'] = $this->buildRateSummary();
    // Replace the phrase "tax rates" with "VAT rates" to be more precise.
    $form['rates']['#markup'] = $this->t('The following VAT rates are provided:');

    return $form;
  }

  
  public function buildZones() {
    $zones = [];
    $zones['jp'] = new TaxZone([
      'id' => 'jp',
      'label' => $this->t('Japan'),
      'display_label' => $labels['vat'],
      'territories' => [
        ['country_code' => 'JP'],
      ],
      'rates' => [
        [
          'id' => 'standard',
          'label' => $labels['standard'],
          'percentages' => [
            ['number' => '0.1', 'start_date' => '2019-10-01'],
          ],
          'default' => TRUE,
        ],
        [
          'id' => 'reduced',
          'label' => $labels['reduced'],
          'percentages' => [
            ['number' => '0.08', 'start_date' => '2019-10-01'],
          ],
        ],
      ],
    ]);

 

 

CMS: 

Commerce Modules

Drupal 8 Commerce Modules

Drupal 8 Commerce に関連するモジュールの情報です。Drupal 7 Commerce は除いています。

Commerce Core Modules

環境 Drupal 8 Commerce  commerce 8.x-2.16  https://www.drupal.org/project/commerce/releases/8.x-2.16

  • Commerce
  • Commerce Cart
  • Commerce Checkout
  • Commerece Log
  • Commerce Number Pattern
  • Commerce Order
  • Commerce Payment
  • Commerce Payment Example
  • Commerce Price
  • Commerce Product
  • Commerce Promotion
  • Commerce Store
  • Commerce Tax

 

拡張モジュール

Tax

Commerce Direct Tax Field  https://www.drupal.org/project/commerce_direct_tax_field

Commerce Product Tax  https://www.drupal.org/project/commerce_product_tax

VAT Number  https://www.drupal.org/project/vat_number

 

Currency

Commerce Currency Resolver  https://www.drupal.org/project/commerce_currency_resolver

Commerce Exchanger  https://www.drupal.org/project/commerce_exchanger

Currency  https://www.drupal.org/project/currency

Currencylayer Currency Converter  https://www.drupal.org/project/currencylayer_currency_converter

 

Product

Commerce Product Add-on  https://www.drupal.org/project/commerce_pado

Commerce AutoSKU  https://www.drupal.org/project/commerce_autosku

Inline Entity Form  https://www.drupal.org/project/inline_entity_form

Commerce Product Reminder  https://www.drupal.org/project/commerce_product_reminder

Commerce Product Variation Table  https://www.drupal.org/project/commerce_pvt

Commerce product reservation(dev)  https://www.drupal.org/project/commerce_product_reservation

Commerce Product Menu UI  https://www.drupal.org/project/commerce_product_menu_ui

Commerce Variation Add-on  https://www.drupal.org/project/commerce_vado

Commerce Product Type Fees  https://www.drupal.org/project/commerce_product_type_fees

Commerce Quick Edit  https://www.drupal.org/project/commerce_quick_edit

Commerce Equivalency Weight  https://www.drupal.org/project/commerce_equiv_weight

Commerce Extended Attributes  https://www.drupal.org/project/commerce_xattributes

Commerce product permissions by type  https://www.drupal.org/project/commerce_product_permissions_by_type

Commerce Quantity Increments  https://www.drupal.org/project/commerce_quantity_increments

Commerce Addon  https://www.drupal.org/project/commerce_addon

Commerce Product MinMax  https://www.drupal.org/project/commerce_product_minmax

Commerce Enhanced Product  https://www.drupal.org/project/enhanced_product

Product Builder for Drupal Commerce  https://www.drupal.org/project/product_builder

Product Choice  https://www.drupal.org/project/product_choice

 

Price

Commerce Pricelist  https://www.drupal.org/project/commerce_pricelist

Commerce Quantity Pricing  https://www.drupal.org/project/commerce_quantity_pricing

Commerce Price Rule  https://www.drupal.org/project/commerce_price_rule

Commerce Pricelist  https://www.drupal.org/project/commerce_pricelist

Commerce Price Updater  https://www.drupal.org/project/commerce_price_updater

Commerce choose price  https://www.drupal.org/project/commerce_choose_price

 

Payment

Commerce PayPal  https://www.drupal.org/project/commerce_paypal

PayPal Subscriptions  https://www.drupal.org/project/paypal_subscriptions

Commerce Donate  https://www.drupal.org/project/commerce_donate

Commerce Stripe  https://www.drupal.org/project/commerce_stripe

Commerce Stripe: Payment Request Button  https://www.drupal.org/project/commerce_stripe_payment_request_button

Commerce Decoupled Stripe  https://www.drupal.org/project/commerce_decoupled_stripe

Commerce Point of Sale (POS)  https://www.drupal.org/project/commerce_pos

Commerce Square Connect  https://www.drupal.org/project/commerce_square

Commerce Partial Payments  https://www.drupal.org/project/commerce_partial_payments

Commerce Single Euro Payments Area (SEPA)  https://www.drupal.org/project/commerce_sepa

Commerce Multiple Payments  https://www.drupal.org/project/commerce_multi_payment

Commerce Amazon Pay  https://www.drupal.org/project/commerce_amazon_lpa

Commerce Pay.JP  https://www.drupal.org/project/commerce_payjp

Commerce Installments  https://www.drupal.org/project/commerce_installments

 

Biling

Commerce Recurring Framework  https://www.drupal.org/project/commerce_recurring

Commerce stepped proportional pro-rata  https://www.drupal.org/project/commerce_prorater_stepped_proportional

Commerce License  https://www.drupal.org/project/commerce_license

Commerce License OG Role  https://www.drupal.org/project/commerce_license_og_role

Commerce License Entity Field  https://www.drupal.org/project/commerce_license_entity_field

Commerce License Access Control  https://www.drupal.org/project/commerce_license_access_control

 

Promotion

Commerce Promo Link  https://www.drupal.org/project/commerce_promo_link

Commerce Coupon Conditions  https://www.drupal.org/project/commerce_coupon_conditions

Commerce Coupon Bulk Import  https://www.drupal.org/project/commerce_coupon_bulk_import

Commerce loyalty points  https://www.drupal.org/project/commerce_loyalty_points

Commerce User Points  https://www.drupal.org/project/commerceuserpoints

 

Order

Commerce Purchase Order  https://www.drupal.org/project/commerce_purchase_order

Commerce Print  https://www.drupal.org/project/commerce_print

Commerce Repeat Order  https://www.drupal.org/project/commerce_repeat_order

Condition Plugins Commerce  https://www.drupal.org/project/condition_plugins_commerce

Condition Plugins  https://www.drupal.org/project/condition_plugins

Commerce Order auto-validation  https://www.drupal.org/project/commerce_order_autovalidate

Commerce order flag  https://www.drupal.org/project/commerce_order_flag

Commerce claim gift aid  https://www.drupal.org/project/commerce_claim_gift_aid

Commerce Costs  https://www.drupal.org/project/commerce_cost

Commerce Purchase on account  https://www.drupal.org/project/commerce_purchase_on_account

 

Checkout

Commerce Checkout Order Fields  https://www.drupal.org/project/commerce_checkout_order_fields

Commerce Decoupled Checkout  https://www.drupal.org/project/commerce_decoupled_checkout

Commerce CheckAge  https://www.drupal.org/project/commerce_checkage

Commerce Approve  https://www.drupal.org/project/commerce_approve

Commerce Profile Checkout Pane  https://www.drupal.org/project/commerce_profile_pane

 

Shipping

Commerce Shipping  https://www.drupal.org/project/commerce_shipping

Commerce UPS  https://www.drupal.org/project/commerce_ups

Commerce Shipping Weight Tariff  https://www.drupal.org/project/commerce_shipping_weight_tariff

Physical Fields  https://www.drupal.org/project/physical

Provides an API for storing and manipulating physical measurements. Supports unit conversions. Supported measurement types:

Area
Length
Temperature
Volume
Weight

Commerce FedEx  https://www.drupal.org/project/commerce_fedex

Commerce postcode delivery  https://www.drupal.org/project/commerce_postcode_delivery

Commerce Shipping Stepped By Item  https://www.drupal.org/project/commerce_shipping_stepped_by_item

Commerce Shipping Price Matrix  https://www.drupal.org/project/commerce_shipping_price_matrix

 

Cart

Commerce Variation Cart Form  https://www.drupal.org/project/commerce_variation_cart_form

Commerce Variation Add to Cart  https://www.drupal.org/project/commerce_variation_add_to_cart

Commerce add to cart matrix  https://www.drupal.org/project/commerce_add_to_cart_matrix

Commerce Ajax Add to Cart  https://www.drupal.org/project/dc_ajax_add_cart

Commerce Ajax cart message  https://www.drupal.org/project/commerce_ajax_cart_message

Commerce Extended Quantity  https://www.drupal.org/project/commerce_xquantity

Commerce Cart API  https://www.drupal.org/project/commerce_cart_api

Commerce Cart Flyout  https://www.drupal.org/project/commerce_cart_flyout

Commerce Events Seats  https://www.drupal.org/project/commerce_events_seats

Commerce Cart Redirection  https://www.drupal.org/project/commerce_cart_redirection

Commerce Add To Cart Link  https://www.drupal.org/project/commerce_add_to_cart_link

Commerce Wishlist  https://www.drupal.org/project/commerce_wishlist

Commerce Wishlist API  https://www.drupal.org/project/commerce_wishlist_api

Commerce Combine Carts  https://www.drupal.org/project/commerce_combine_carts

Commerce Cart Blocks  https://www.drupal.org/project/commerce_cart_blocks

Commerce Cart Refresh  https://www.drupal.org/project/commerce_cart_refresh

Commerce Cart Advanced  https://www.drupal.org/project/commerce_cart_advanced

Categories for Commerce Cart  https://www.drupal.org/project/commerce_cart_categories

Commerce Cart to Basket  https://www.drupal.org/project/commerce_cart_to_basket

Commerce Quick Purchase  https://www.drupal.org/project/commerce_quick_purchase

 

Stock

Commerce Stock  https://www.drupal.org/project/commerce_stock

Commerce Stock Notifications  https://www.drupal.org/project/commerce_stock_notifications

Commerce Inventory  https://www.drupal.org/project/commerce_inventory

Commerce Inventory: Square  https://www.drupal.org/project/commerce_inventory_square

Feeds commerce stock  https://www.drupal.org/project/feeds_stock

 

Import / Export

Commerce Feeds  https://www.drupal.org/project/commerce_feeds

Commerce Migrate  https://www.drupal.org/project/commerce_migrate

Commerce Product Variation CSV  https://www.drupal.org/project/commerce_product_variation_csv

Commerce export  https://www.drupal.org/project/commerce_export

 

Search / Sort

Facets Product Attributes Sorting Widget  https://www.drupal.org/project/facets_product_attributes_sorting

 

Marketing & SEO

Commerce Google Tag Manager  https://www.drupal.org/project/commerce_google_tag_manager

Googalytics Commerce  https://www.drupal.org/project/ga_commerce

Google AdSense integration  https://www.drupal.org/project/adsense

Mailchimp E-Commerce  https://www.drupal.org/project/mailchimp_ecommerce

Commerce Extra Items  https://www.drupal.org/project/commerce_extra_items

Commerce Shopping Hours  https://www.drupal.org/project/commerce_shopping_hours

Commerce Store Domain  https://www.drupal.org/project/commerce_store_domain

LiveChat  https://www.drupal.org/project/livechat

 

CRM

CRM Core Commerce  https://www.drupal.org/project/crm_core_commerce

Commerce Salesforce Integrator  https://www.drupal.org/project/commerce_salesforce_integrator

Recently Read  https://www.drupal.org/project/recently_read

 

eLearning

Opigno Commerce https://www.drupal.org/project/opigno_commerce

 

Back Office

Commerce Invoice  https://www.drupal.org/project/commerce_invoice

Commerce Bulk  https://www.drupal.org/project/commerce_bulk

Commerce Reporting  https://www.drupal.org/project/commerce_reports

Commerce Reactions  https://www.drupal.org/project/commerce_reactions

Commerce Event Trigger API  https://www.drupal.org/project/commerce_eta

Commerce BCC Address Token  https://www.drupal.org/project/commerce_bcc_address_token

Commerce Customers Also Bought  https://www.drupal.org/project/commerce_customers_also_bought

Commerce order update  https://www.drupal.org/project/commerce_order_update

Bulk Update Fields - Commerce  https://www.drupal.org/project/bulk_update_fields_commerce

Commerce Views Reports  https://www.drupal.org/project/commerce_view_reports

Double Entry Bookkeeping  https://www.drupal.org/project/bookkeeping

Role paywall  https://www.drupal.org/project/role_paywall

 

Content Access

Access Conditions Commerce  https://www.drupal.org/project/access_conditions_commerce

Commerce Condition Kit  https://www.drupal.org/project/commerce_condition_kit

 

Admin

Commerce Admin Checkout  https://www.drupal.org/project/commerce_admin_checkout

Commerce Secure Hosting  https://www.drupal.org/project/commerce_securehosting

Commerce Url Hash  https://www.drupal.org/project/commerce_url

Replicate UI  https://www.drupal.org/project/replicate_ui

Cheeseburger Menu  https://www.drupal.org/project/cheeseburger_menu

 

User

Group Commerce  https://www.drupal.org/project/gcommerce

User registration password  https://www.drupal.org/project/user_registrationpassword

Commerce guest registration  https://www.drupal.org/project/commerce_guest_registration

Terms of Use  https://www.drupal.org/project/terms_of_use

Legal  https://www.drupal.org/project/legal

 

etc

Commerce Vendor  https://www.drupal.org/project/commerce_vendor

Commerce TrustedShops  https://www.drupal.org/project/commerce_trustedshops

Commerce Demo  https://www.drupal.org/project/commerce_demo

Commerce 2.x demo project template   https://github.com/drupalcommerce/demo-project

Commerce Funds  https://www.drupal.org/project/commerce_funds

Dimension  https://www.drupal.org/project/dimension

 

タグ: 

eCommerce: 

CMS: 

Square module

Squareとの連携

決済システム Squareとの連携

モジュール概要: Commerce Square Connect

インストール: 概要は ここから 

 

SquareのDeveloperポータルで新規に自分のアプリケーションを開発

ログイン: ここから  https://developer.squareup.com/apps

 

Square PHP SDK インストール $ php composer.phar require square/connect

 詳細は、https://developer.squareup.com/docs/sdks/php

Drupal 8のSquareモジュールのインストール $ composer require drupal/commerce_square

 

ストア設定入門

ストアの設定入門

システム環境: Drupal 8  Drupal Commerce 2.x

Drupal Commerceでのキーコンポーネントは、ストアに関連する製品と注文です。ストアで注文や配送、在庫などを管理し顧客が購入できます。各ストアで通貨があり、顧客ごとの通貨を作成できます。

マルチストアに対応し、デフォルトのストアを定義できます。デフォルトのストアは、ストアを判別できない場合に使用されます(非製品ページまたは注文ページ)。

 

ストアの設定

1)通貨の設定と編集

2)ストアの作成と編集

ストア名称などを新規作成 admin/commerce/config/stores

※ユースケース(このような使い方もできます)

  • マルチストアの定義(一つの事業で複数の事業所がある)
  • マーケットプレイス(市場)モデル(販売代理店がある場合)

3)デフォルトのストアを変更

admin/commerce/config/stores

ストアが複数ある場合はデフォルトのストアを設定します。一つの場合は確認まで。

 

商品(製品)

属性: ユニークな選択肢を生み出す商品についての概念。 衣類の場合、サイズになります。 サブスクリプションの場合は、月単位または年単位の請求オプションなど。

バリエーション: 商品の特別な属性のオプションを表現します。 たとえば、ラージサイズブルーのスウェットシャツとミディアムサイズレッドのスウェットシャツ。

商品: 実際の商品そのもの。例えば、すべてのバリエーションが含まれるスウェットシャツ。

< 例えば、Tシャツの場合 >

Tシャツという商品タイプ 
 ・サイズという商品属性(attribute)
 ・色という商品属性(attribute)
各グラフィック柄のTシャツはグラフィック柄ごとに製品となり、色とサイズのバリエーションがある

商品 サイズ
グラフィック柄 Small
グラフィック柄 Medium
グラフィック柄 Large グレー

 

 

 

 

 

属性の定義と作り方

サイズは商品の属性です。Small製品属性です。そのには、SKU価格が含まれ、製品バリエーションと言われます。その商品バリエーションが商品内でグループ化されます。

商品属性の追加 admin/commerce/product-attributes 

1)色(Color)属性を作成、その後、グレーなどの値を設定するフィールドを追加します。

2)商品バリエーションタイプという属性を追加します。admin/commerce/config/product-variation-types

Defaultのバリエーションタイプで、色(Color)属性 を選択することで、さまざま色のTシャツを選択できるようになります。

3)商品色の属性を追加します。 admin/commerce/products 製品「イベントのTシャツ」を追加し

バリエーションを追加  SKUに red-tshirt  価格は2000円 ColorはRedを選択 で保存

バリエーションを追加  SKUに white-tshirt  価格は3000円 ColorはWhiteを選択 で保存

商品の属性にフィールド追加

製品の属性ごとにそのフィールドを追加できます。 admin/commerce/product-attributes

標準は値が追加できますが、その他、フィールドを追加できます。例えば、日付など。

属性を作成後、製品バリエーションタイプで属性が必要になります。最初の属性がデフォルトになるので、そのデフォルト設定を変更する場合は、製品バリエーションタイプという属性で、デフォルトの「フィールドの管理」で編集し、「必須フィールド」のチェックを外します。

 

 

商品構成の管理

まず商品の属性と製品バリエーションタイプを作成します。属性は、「Color」と「Size」です。

Tシャツのための新しい製品バリエーションタイプを作成します。

「Add product variation type」で追加 admin/commerce/config/product-variation-types

ラベルは、T-shirt  チェックON「Generate variation titles based on attribute values.」、「order item type」はDefault、属性はColorとSizeを選択。

フィールドの管理」で画像のフィールドを追加します。これで色のバリエーションごとにTシャツの写真をアップロードできます。

 

商品タイプの作成

商品タイプを作成します。 admin/commerce/config/product-types

Add Prodcut Type」をクリックして、ラベルは T-Shirt 、商品バリエーションタイプは「T-shirt」を選択。

 

商品の作成

商品を作成します。 admin/commerce/products

商品を追加」クリック  作成した商品タイプ「T-Shirt」を選択して商品を作成。

商品を購入できるストアで、店舗が1つしかない場合、店舗の表示設定は表示されません。

次に、製品のバリエーションを作成します。 バリエーションは、購入可能なオプションです。 SKU、価格、およびその他の必須フィールドを指定します。 完了したら、[バリエーションを作成]をクリックします。

[バリエーションを作成]で、SKU、価格、色、サイズ、画像などを設定して商品を作成します。

商品ごとに、バリエーションを持つことで、一つの柄で、色、サイズの組み合わせの商品を設定し販売できます。

 

商品の設定サンプル その1

ストアの作成 -> 商品構成の作成 ->商品の追加

上記商品(Tシャツ)の場合

1.ストアの作成

  • ストア admin/commerce/config/stores

名称、デフォルトの通貨タイムゾーン、ストアの住所、販売請求する国税金の設定(価格に税金を含めるか)、ストアのURL、デフォルトの設定

 
  • ストアタイプ admin/commerce/config/store-types

ラベル(オンライン)、説明、フィールドの追加可能、  

 

2.商品構成の作成

  • 商品属性 admin/commerce/product-attributes

Color(Red、Black、Green、White)、ElementType(要素タイプ)はRendered Attributeを選択、商品バリエーションタイプ(T-Shirt)、フィールド追加が可能(画像など)

Size(Large、Midium、Small)、ElementType(要素タイプ)はRendered Attributeを選択、商品バリエーションタイプ(T-Shirt)、フィールド追加が可能(画像など)

 
  • 商品バリエーションタイプ admin/commerce/config/product-variation-types

ラベル(T-Shirt)、属性の値でバリエーションのタイトルを自動作成、オーダーアイテムタイプ(デフォルト)、属性(Color、Size)、フィールド追加が可能(商品の画像)

 
  • 商品タイプ /admin/commerce/config/product-types

ラベル(T-Shirt)、説明(Tシャツの商品タイプ)、商品バリエーションタイプ(T-Shirt)<各商品ごとに複数のバリエーションをもてる、ページで表示された製品に製品バリエーションフィールドを挿入する、このタイプをデフォルトで新商品として公開する>、フィールド追加が可能、  

 

3.商品の追加

  • 商品 /admin/commerce/products

商品を追加(商品タイプから商品を追加、T-Shirtを選択)、商品名、本文で商品説明、バリエーション(SKUはバリエーションでマシン認識できる英数字のユニーク番号、リスト価格で提供するか、価格、色、サイズ、フィールド追加された画像

 

Drupal 8 Commerce database Schema

 

商品の設定サンプル その2 < 会議室予約の事例 >

1.ストアの作成

  • ストア admin/commerce/config/stores

名称、デフォルトの通貨タイムゾーン、ストアの住所、販売請求する国税金の設定(価格に税金を含めるか)、ストアのURL、デフォルトの設定

 

2.商品構成の作成

  • 商品属性 admin/commerce/product-attributes

部屋の種類(ホール、控室、大会議室、小会議室)、ElementType(要素タイプ)はRendered Attributeを選択、商品バリエーションタイプ(未定???)、フィールド追加が可能

会場備品(プロジェクター、音響設備、テーブル、椅子)、ElementType(要素タイプ)はRendered Attributeを選択、商品バリエーションタイプ(未定???

利用時間(午前、午後、夜間、全日)、ElementType(要素タイプ)はRendered Attributeを選択、商品バリエーションタイプ(未定???)、フィールド追加(日付)  

利用日(平日、土曜日、日曜日、祝祭日)、ElementType(要素タイプ)はRendered Attributeを選択、商品バリエーションタイプ(未定???)、フィールド追加(日付)  

 

  • 商品バリエーションタイプ admin/commerce/config/product-variation-types

ラベル(施設予約)、属性の値でバリエーションのタイトルを自動作成、オーダーアイテムタイプ(デフォルト)、属性(部屋の種類、利用時間、利用日)、フィールド追加が可能

ラベル(備品予約)、属性の値でバリエーションのタイトルを自動作成、オーダーアイテムタイプ(デフォルト)、属性(会場備品、利用時間、利用日)、フィールド追加が可能

 

  • 商品タイプ /admin/commerce/config/product-types

ラベル(施設予約)、説明(施設予約時の部屋のタイプ)、商品バリエーションタイプ(施設予約)<各商品ごとに複数のバリエーションをもてる、ページで表示された製品に製品バリエーションフィールドを挿入する、このタイプをデフォルトで新商品として公開する>、フィールド追加が可能(利用日)、  

ラベル(備品予約)、説明(施設予約時の備品オプションのタイプ)、商品バリエーションタイプ(備品予約)<各商品ごとに複数のバリエーションをもてる、ページで表示された製品に製品バリエーションフィールドを挿入する、このタイプをデフォルトで新商品として公開する>、フィールド追加が可能(利用日)、  

 

3.商品の追加

  • 商品 /admin/commerce/products

商品を追加(商品タイプから商品を追加、を選択)、商品名、本文で商品説明、バリエーション(SKUはバリエーションでマシン認識できる英数字のユニーク番号、リスト価格で提供するか、価格、色、サイズ、フィールド追加された画像

 

Drupal 8 Commerce database schema

 

 

注文

 

 

決済・支払い

 

 

 

プロモーション

 

 

 

税金

 

 

購入手続きフロー(Checkout)

 

 

 

 

配送

 

 

 

在庫(stock)

Commerce Stock : 概要とダウンロード https://www.drupal.org/project/commerce_stock

Commerce stock の使い方 https://git.drupalcode.org/project/commerce_stock/blob/8.x-1.x/README.md

 

 

 

タグ: 

eCommerce: 

CMS: