WooCommerceでカートアイテムを同じ順序で分割する方法(ビデオ付き)

公開: 2022-02-09
Split cart items

最終更新日-2022年5月4日

オンラインストアでの配送戦略は、多くの要因に依存しています。 場合によっては、出荷にまったく異なるアプローチを必要とする一連の製品を販売することになります。 顧客がこれらの製品を一緒に注文した場合はどうなりますか? 複数の配送方法を順番にどのように管理しますか? このシナリオは、さまざまなベンダーが特定の配送方法を適用することを希望するマルチベンダーマーケットプレイスにも適用できます。 この記事では、1回の注文で複数の配送方法を選択する必要があるいくつかのシナリオについて説明します。 また、カートアイテムを同じ順序で分割し、さまざまな方法で発送する方法についても説明します。

カートを分割する必要があるさまざまなシナリオ

カートを同じ注文に分割し、顧客に異なる配送方法を提供するさまざまなシナリオがあります。 これらのいくつかを見てみましょう:

複数の倉庫がある場合

製品を保管するために複数の倉庫を使用する場合があります。 顧客の注文に複数の倉庫からの製品が含まれている場合、送料はどのように計上されますか? 利用可能な配送方法、料金、さらには配達時間も、発送元の倉庫によって異なります。 ここでは、カートを分割して、顧客に複数の配送方法を提供できます。 全体として、配送オプションをより透過的に表示するのに役立ちます。

通常の商品と一緒に重い商品を発送する

貨物輸送が必要な1つまたは2つの商品を店舗で販売している場合があります。 顧客がこれらの製品を通常の製品のいくつかと一緒に注文した場合はどうなりますか? カートを分割して、個別の配送方法を表示できます。 純粋なカスタマーエクスペリエンスの観点から、特別な配送要件のある商品がカートに入っている場合、他の配送方法を隠すことを考えることができます。 ただし、シームレスに実行するために、配送オプションを分けておきたい場合があります。 したがって、この場合、カートを同じ順序で分割すると便利です。

特定の配送クラスでのみ送料無料

特定の配送クラスに属する商品にのみ送料無料を提供するシナリオを考えてみます。 この配送クラスから商品を注文するときに、顧客が他の商品を注文する可能性が高くなります。 では、この状況にどのように対処しますか。 他の配送​​方法で送料無料オプションを上書きすることができます。 ただし、特定の配送クラスで利用できる送料無料オプションがあることを顧客に明確に伝えたい場合は、カートを分割できます。 このようにして、どの製品に対して配送料が請求されるかが顧客に明確になります。

ピックアップのみの製品を扱う

場合によっては、発送したくない商品を販売していても、自分の場所から拾うことはできます。 このような商品を他の通常の商品と一緒に購入するオプションを顧客に提供できます。 さらに、一部の商品を発送する必要があるか、すべての商品を現地で受け取るかを顧客に選択させることができます。

WooCommerceの高度な配送オプション

このプラグインを使用すると、カートを複数の配送パッケージに自由に分割できます。 各配送パッケージには、選択した構成に基づいた独自の料金があります。 さまざまな配送パッケージを希望どおりに設定するのに役立つ条件付きロジックを提供します。 フロントエンドでは、顧客は各パッケージで利用可能な配送オプションを確認し、それに応じて選択できます。

同じ順序でカートアイテムを分割する
このプラグインは、カートアイテムを同じ順序で分割し、配送方法を選択的に適用するのに役立ちます。

このプラグインを使用して、さまざまな配送アプローチを必要とする製品がカートにあるさまざまなシナリオで配送カートを分割できます。 プラグインは、選択した配送方法の詳細を示す通知が顧客や店長に送信されるため、注文処理プロセスにも役立ちます。

特徴

このプラグインの便利な機能のいくつかを見てみましょう。

  • カートの詳細、製品の機能、または配送場所に基づいて、無制限の配送パッケージを作成します。
  • ストア戦略に従ってパッケージの順序を並べ替えます。
  • 配送パッケージの作成を動的に制御するのに役立つ条件付きロジック。
  • カートに作成された個々の配送パッケージに名前を付けます
  • デフォルトのWooCommerce配送オプションの名前を変更します。
  • パッケージから配送方法を選択的に除外します。

プラグインのシングルサイトサブスクリプションは49ドルかかります。

Advanced Shipping Conditionsプラグインを使用してカートを分割するにはどうすればよいですか?

以下の手順に従って、ストアに複数の配送パッケージを設定できます。

1:プラグインを購入します。 インストールしてアクティブ化します。

2:設定ページからプラグインを有効にし、配送パッケージを追加します。

同じ順序でカートアイテムを分割する
プラグインを有効にすると、新しい配送パッケージを作成できます。

3.配送パッケージに含まれている製品を確認します。

同じ順序でカートアイテムを分割する
さまざまな条件に基づいて製品を選択できます。

4.複数の配送パッケージが作成された場合に、配送パッケージを適用する順序を定義します。

同じ順序でカートアイテムを分割する
ドラッグアンドドロップするだけで、配送パッケージの適用の優先度を設定できます。

5.複数の配送パッケージから商品を追加すると、分割カートが表示されます。

同じ順序でカートアイテムを分割する
カートには、設定に従って複数のパッケージが表示されます。

注意:どの配送パッケージにも属していない商品は、デフォルトの「配送」オプションの下にまとめられます。

マルチベンダー市場でのカートの分割

同じ順序で分割カートが表示される別のシナリオは、複数のベンダーが存在する店舗です。 複数のベンダーでストアを運営している場合は、配送方法を選択的に適用する方法を確認することをお勧めします。

複数のベンダーによる製品をセットアップするには、マルチベンダープラグインを使用する必要があります。 これらのプラグインのほとんどは、ベンダーが独自の出荷戦略を処理できるようにします。 設定に基づいて、顧客が1つの注文でさまざまなベンダーの製品を選択したときに、カートが分割されて複数の配送オプションが表示されます。

分割カートでリアルタイムの料金を表示する

ご存知のように、人気のある配送業者をWooCommerceストアに統合することで、リアルタイムの配送料金を使用できます。 ELEXは、USPS、FedEx、UPSなどの人気のある配送業者を統合するのに役立ついくつかのプラグインを備えた人気のある開発者の1人です。 ?

以下のコードスニペットを使用して、パッケージごとに異なる配送オプションを選択するオプションを顧客に提供できます。 同じ注文のカートアイテムを分割し、複数の配送方法で発送します。

特定のベンダー名を表示する場合は、テンプレートcart-shipping.phpのフックを使用して、ランダムな番号付け方法の代わりにベンダー名を置き換えることができます。

define("PV_ATTRIBUTE", "vendor");
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
/**
* Check if WooCommerce is active
*/
if ( in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) {
if ( ! class_exists( 'TH_Shipping_Options' ) ) {
class TH_Shipping_Options {
/**
* Constructor for your shipping class
*
* @access public
* @return void
*/
public function __construct() {
// take care of anything else that needs to be done immediately upon plugin instantiation, here in the constructor.
add_filter( 'woocommerce_cart_shipping_packages', array( &$this, 'th_woocommerce_cart_shipping_packages') );
// Overriding template to introduce vendor names along with standard labels across shipping packages.
//add_filter( 'woocommerce_locate_template', array( $this, 'th_woocommerce_locate_template' ), 10, 3 );
}
function th_woocommerce_locate_template( $template, $template_name, $template_path ) {
if('cart/cart-shipping.php' == $template_name)
{
$path = plugin_dir_path( __FILE__ ) . '/woocommerce/templates/' . $template_name;
return file_exists( $path ) ? $path : $template;
}
return $template;
}
function th_woocommerce_cart_shipping_packages( $packages ) {
// Reset the packages
$packages = array();
$vendor_items_map = array();
foreach ( WC()->cart->get_cart() as $item ) {
$product_id = $item['product_id'];
$vendors = get_product_vendors( $product_id );
if ( $item['data']->needs_shipping() ) {
if($vendors) {
foreach( $vendors as $vendor ) {
// Expecting/assuming there is only one Vendor assigned per product. Hm.
$vendor_items_map[$vendor->ID][] = $item;
break;
}
}
// No product vendor associated with item.
else {
$vendor_items_map['0'][] = $item;
}
}
}
foreach($vendor_items_map as $key => $vendor_items) {
$packages[] = array(
//'ship_via' => array( 'flat_rate' ),
'contents' => $vendor_items,
'contents_cost' => array_sum( wp_list_pluck( $vendor_items, 'line_total' ) ),
'applied_coupons' => WC()->cart->applied_coupons,
'destination' => array(
'country' => WC()->customer->get_shipping_country(),
'state' => WC()->customer->get_shipping_state(),
'postcode' => WC()->customer->get_shipping_postcode(),
'city' => WC()->customer->get_shipping_city(),
'address' => WC()->customer->get_shipping_address(),
'address_2' => WC()->customer->get_shipping_address_2()
)
);
}
return $packages;
}
}
// finally instantiate our plugin class and add it to the set of globals
$GLOBALS['th_shipping_options_init'] = new TH_Shipping_Options();
}
// Start up this plugin
add_action( 'init', 'TH_Shipping_Options' );
function TH_Shipping_Options() {
global $TH_Shipping_Options;
$TH_Shipping_Options = new TH_Shipping_Options();
}
}

ELEXプラグインのマルチベンダーサポート

ELEX配送プラグインを使用している場合は、このアドオンを使用して、ベンダーが場所に基づいてリアルタイムの料金にアクセスできるようにすることができます。 このアドオンは、マルチベンダープラグインと1つ以上のELEX配送プラグインがWooCommerceストアにインストールされている場合に使用できることに注意してください。 Dokan、WooCommerce製品ベンダー、WCベンダーなどの一般的なマルチベンダーソリューションと互換性があります。

同じ順序でカートアイテムを分割する
複数のベンダーの製品がカートに入っている場合、分割カートにはベンダー固有の配送料が表示されます。

特徴

このプラグインでできることを簡単に見てみましょう。

  • 統合された運送業者を使用して、ベンダーが独自のリアルタイムの配送料を表示できるようにします。
  • すべての送料を追加することにより、チェックアウトページで合計送料を提供するオプション。
  • 人気のマルチベンダーソリューションおよびELEX出荷プラグインと互換性があります。

このアドオンは、単一サイトのサブスクリプションで49ドルかかります。 このアドオンは、マルチベンダー環境にELEXプラグインがある場合にのみ機能することに注意してください。

カートを複数の配送先住所に分割

ここで、カートが同じ順序で分割される別のシナリオは、顧客が複数のアドレスに注文で製品を送信したい場合です。 これは、顧客が友人や家族に贈り物を送りたいホリデーシーズンによくある懸念事項です。 したがって、同じ順序で複数の場所にアイテムを送信するオプションを提供している場合は、カスタマーエクスペリエンスが大幅に向上する可能性があります。 これを管理する方法を見てみましょう。

複数のアドレスを発送

このプラグインは、顧客が複数の注文を作成する代わりに、同じ注文から複数の配送先住所にアイテムを送信するのに役立ちます。 また、同じカートを再作成して別のアドレスに送信できるカート複製のオプションもあります。 さらに、プラグインは、複数の住所の配送オプションから特定の製品を除外する柔軟性を提供します。 テキストをカスタマイズして、チェックアウトページで複数の住所に配送される可能性があることを顧客に知らせることができます。

同じ順序でカートアイテムを分割する
このプラグインは、同じ注文からチェックアウトしながら、顧客が複数のアドレスに商品を送信するためのオプションを提供するのに役立ちます。

特徴

このプラグインの主な機能は次のとおりです。

  • 顧客が1回のチェックアウトで複数の場所に発送するためのオプションを提供します。
  • カートを複製して複数の場所に送信します。
  • 顧客が複数のアドレスを保存できるようにする
  • 注文のアイテムまたはアドレスの数に制限はありません。
  • 複数の住所への配送から商品またはカテゴリを除外します。
  • 部分的に完了した注文のステータスメールを送信するオプション。
  • すべてのWooCommerce配送方法をサポートします。

この記事で、同じ注文のカートアイテムを分割する必要があるさまざまなシナリオの概要が説明されたことを願っています。 この記事で説明されている戦略とツールは、店舗管理の改善に役立つだけでなく、顧客体験を向上させるための範囲を提供するはずです。

以下のビデオをチェックしてください:

参考文献

  • WooCommerceのベストシッピングプラグイン
  • WooCommerceのマルチベンダーマーケットプレイスを作成する方法。
  • WooCommerce Cartページをカスタマイズする方法は?
  • WooCommerceでカートの制限を設定するにはどうすればよいですか?