Как разделить товары в корзине в одном порядке на WooCommerce (с видео)

Опубликовано: 2022-02-09
Split cart items

Последнее обновление — 4 мая 2022 г.

Стратегия доставки в вашем интернет-магазине зависит от множества факторов. Иногда вы будете продавать кучу продуктов, которые требуют совершенно разных подходов к доставке. Что делать, если ваши клиенты заказывают эти продукты вместе? Как вы будете управлять несколькими способами доставки в порядке? Этот сценарий также применим для торговых площадок с несколькими поставщиками, где разные поставщики хотят, чтобы применялись определенные методы доставки. В этой статье мы обсудим несколько сценариев, когда вам нужно выбрать несколько способов доставки в одном заказе. Кроме того, мы увидим, как вы можете разделить товары в корзине в одном заказе и отправить их разными способами.

Различные сценарии, в которых вам нужно разделить корзину

Существуют разные сценарии, когда вы хотите разделить корзину в одном заказе и предоставить клиентам разные способы доставки. Вот некоторые из них:

Когда у вас несколько складов

Иногда вы будете использовать несколько складов для хранения своей продукции. Как вы будете учитывать стоимость доставки, если заказ клиента включает товары с нескольких складов? Доступные способы доставки, тарифы и даже время доставки будут отличаться в зависимости от склада, с которого вы отправляете товар. Здесь вы можете разделить корзину и предложить покупателям несколько способов доставки. В целом, это поможет вам отображать варианты доставки более прозрачным образом.

Доставка тяжелых продуктов вместе с обычными

Могут быть случаи, когда вы продаете один или два продукта в своем магазине, для которых требуется грузовая доставка. Что, если клиенты будут заказывать эти продукты вместе с некоторыми обычными продуктами? Вы можете разделить корзину и показать отдельные способы доставки. С точки зрения чистого клиентского опыта вы можете подумать о том, чтобы скрыть другие способы доставки, когда в корзине находится продукт с особыми требованиями к доставке. Однако для беспрепятственного выполнения иногда вам может потребоваться разделить варианты доставки. Таким образом, разделение корзины в том же порядке может быть полезным для вас в этом случае.

Бесплатная доставка только для определенного класса доставки

Рассмотрим сценарий, в котором вы хотите предложить бесплатную доставку только продуктам, принадлежащим к определенному классу доставки. Высока вероятность того, что клиенты будут заказывать некоторые другие продукты, когда они заказывают товары из этого класса доставки. Так как же вам удастся справиться с этой ситуацией. Вы можете позволить другим способам доставки переопределить вариант бесплатной доставки. Однако, если вы хотите четко сообщить клиентам, что для определенного класса доставки доступен вариант бесплатной доставки, вы можете разделить корзину. Таким образом, клиентам будет ясно, за какие товары взимается плата за доставку.

Работайте только с товарами на вынос

Иногда вы, возможно, продаете товары, которые не хотите отправлять, но позволяете забрать их из вашего местоположения. Вы можете предоставить клиентам возможность покупать такие товары вместе с другими обычными товарами. Кроме того, вы можете позволить клиентам выбирать, нужно ли им доставлять некоторые продукты или они могут забрать все продукты на месте.

Расширенные варианты доставки WooCommerce

Этот плагин дает вам возможность разделить корзину на несколько посылок. Каждый пакет доставки будет иметь свои собственные тарифы в зависимости от конфигурации, которую вы выберете. Он предлагает условную логику, чтобы помочь вам настроить различные пакеты доставки именно так, как вы этого хотите. Во внешнем интерфейсе клиент увидит доступные варианты доставки для каждой посылки и сможет выбрать соответствующий.

Разделить товары в корзине в одном порядке
Этот плагин поможет вам разделить товары в корзине в одном порядке и выборочно применять способы доставки.

Вы можете использовать этот плагин для разделения корзины доставки в разных сценариях, когда в корзине находятся продукты, требующие различных подходов к доставке. Плагин также помогает в процессе выполнения вашего заказа, поскольку клиентам и менеджерам магазинов отправляются уведомления с подробным описанием выбранных способов доставки.

Функции

Вот некоторые из полезных функций этого плагина:

  • Создавайте неограниченные пакеты доставки на основе сведений о корзине, характеристик продукта или места доставки.
  • Сортируйте посылки в соответствии со стратегией вашего магазина.
  • Условная логика, помогающая вам динамически управлять созданием пакета доставки.
  • Назовите отдельные пакеты доставки, созданные в корзине
  • Переименуйте вариант доставки WooCommerce по умолчанию.
  • Выборочно исключайте способы доставки из пакета.

Подписка на один сайт плагина обойдется вам в 49 долларов.

Как разделить корзину с помощью плагина «Расширенные условия доставки»?

Вы можете настроить несколько пакетов доставки в своем магазине, выполнив следующие действия:

1: Купить плагин. Установите и активируйте его.

2: Включите плагин на странице настроек и добавьте пакет доставки.

Разделить товары в корзине в одном порядке
После включения плагина вы можете создать новый пакет доставки.

3. Определите продукты, входящие в комплект поставки.

Разделить товары в корзине в одном порядке
Вы можете выбрать продукты, исходя из различных условий.

4. Определите порядок применения пакетов доставки при создании нескольких пакетов доставки.

Разделить товары в корзине в одном порядке
Вы можете просто перетащить, чтобы установить приоритет применения пакетов доставки.

5. Клиенты увидят разделенную корзину, когда добавят товары из нескольких пакетов доставки.

Разделить товары в корзине в одном порядке
В корзине будет отображаться несколько пакетов в соответствии с настройками.

Обратите внимание: товары, не входящие ни в какие транспортные пакеты, будут по умолчанию включены в вариант «доставка» вместе.

Разделение корзины на торговых площадках с несколькими поставщиками

Другой сценарий, в котором вы видите разделенную корзину в одном и том же заказе, — это магазины с несколькими поставщиками. Если вы управляете магазином с несколькими поставщиками, вы можете посмотреть, как вы можете выборочно применять методы доставки.

Вам нужно использовать плагин для нескольких поставщиков, чтобы настроить продукты от нескольких поставщиков. Большинство этих плагинов позволяют поставщикам управлять собственной стратегией доставки. В зависимости от настроек корзина будет разделена, чтобы показать несколько вариантов доставки, когда клиенты выбирают товары разных поставщиков в одном заказе.

Отображение ставок в реальном времени с разделенной корзиной

Как вы знаете, вы можете использовать тарифы на доставку в реальном времени, интегрировав популярных перевозчиков в свой магазин WooCommerce. ELEX — один из популярных разработчиков с несколькими плагинами, которые помогут вам интегрировать популярных перевозчиков, таких как USPS, FedEx, UPS и т. д. Но как разделить корзину и предложить гибкость для каждого поставщика, чтобы установить свои собственные применимые тарифы в реальном времени? ?

Вы можете использовать приведенный ниже фрагмент кода, чтобы предоставить клиентам возможность выбрать другой вариант доставки для каждой посылки. Он будет разделять товары в корзине из одного заказа и отправлять их несколькими способами доставки.

Если вы хотите отобразить имя конкретного поставщика, вы можете использовать хук в шаблоне 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, вы можете использовать это дополнение, чтобы помочь продавцам получить доступ к тарифам в реальном времени в зависимости от их местоположения. Обратите внимание, что вы можете использовать это дополнение, если у вас уже установлен плагин для нескольких поставщиков и один или несколько плагинов доставки ELEX, установленных в вашем магазине WooCommerce. Он совместим с популярными решениями от нескольких поставщиков, такими как Dokan, поставщики продуктов WooCommerce и поставщики WC.

Разделить товары в корзине в одном порядке
В разделенной корзине будут отображаться тарифы на доставку, специфичные для поставщика, если в корзине находятся продукты нескольких поставщиков.

Функции

Вот краткий обзор того, что вы можете делать с этим плагином:

  • Помогите поставщикам отображать свои тарифы на доставку в режиме реального времени с интегрированными перевозчиками.
  • Возможность указать комбинированную стоимость доставки на странице оформления заказа, добавив все расходы на доставку.
  • Совместимость с популярными мультивендорными решениями и плагинами доставки ELEX.

Это дополнение обойдется вам в 49 долларов за подписку на один сайт. Обратите внимание, что это дополнение будет работать только в том случае, если у вас есть плагин ELEX в среде с несколькими поставщиками.

Разделение корзины на несколько адресов доставки

Теперь другой сценарий, когда корзина разделена в одном и том же заказе, — это когда клиенты хотят отправить товары в заказе на несколько адресов. Это распространенная проблема во время праздничного сезона, когда клиенты хотят отправить подарки друзьям и семье. Таким образом, если вы предоставляете возможность отправлять товары в одном и том же порядке в несколько мест, вы можете значительно улучшить качество обслуживания клиентов. Давайте посмотрим, как вы можете управлять этим:

Доставка по нескольким адресам

Этот плагин поможет вашим клиентам отправлять товары из одного заказа на несколько адресов доставки вместо создания нескольких заказов. У него также есть возможность дублирования корзины, когда одну и ту же корзину можно воссоздать и отправить на другой адрес. Кроме того, плагин предоставляет вам возможность исключать определенные продукты из варианта доставки по нескольким адресам. Вы можете настроить текст, чтобы ваши клиенты знали о возможности доставки по нескольким адресам на странице оформления заказа.

Разделить товары в корзине в одном порядке
Этот плагин поможет вам предоставить вашим клиентам возможность отправлять товары на несколько адресов при оформлении одного и того же заказа.

Функции

Вот основные особенности этого плагина:

  • Предоставьте своим клиентам возможность отправлять товары в несколько мест с помощью одной кассы.
  • Дублируйте тележки для отправки в несколько мест.
  • Разрешить клиентам сохранять несколько адресов
  • Нет ограничений на количество товаров или адресов в заказе.
  • Исключите товары или категории из доставки по нескольким адресам.
  • Возможность отправлять электронные письма о статусе для частично выполненных заказов.
  • Поддерживает все способы доставки WooCommerce.

Надеюсь, эта статья дала вам обзор различных сценариев, когда вам нужно разделить товары в корзине для одного и того же заказа. Стратегии и инструменты, обсуждаемые в статье, должны помочь вам улучшить управление магазином, а также предоставить возможности для повышения качества обслуживания клиентов.

Посмотрите видео ниже:

дальнейшее чтение

  • Лучшие плагины доставки для WooCommerce
  • Как создать мультивендорную торговую площадку для WooCommerce.
  • Как настроить страницу корзины WooCommerce?
  • Как установить ограничения корзины в WooCommerce?