Корзина сайта WooCommerce, связанная со вторым сайтом WooCommerce - PullRequest
0 голосов
/ 12 ноября 2019

возможно ли связать 1-ую корзину веб-сайта WooCommerce со 2-й корзиной веб-сайта WooCommerce?

поэтому идея заключается в том, что если кто-то выбрал какие-либо товары на 1-м веб-сайте, то элементы в корзине вставляются в2-я корзина сайта. Это возможно? или есть идеи получше?

1 Ответ

1 голос
/ 12 ноября 2019

Вы можете создать собственный файл cookie, когда товар добавляется на 1-й сайт. Заполните этот пользовательский файл cookie товарным скусом внутри этой корзины. Таким образом, всякий раз, когда пользователь загружает второй веб-сайт, должен существовать плагин, который загружает идентификаторы продуктов в пользовательские файлы cookie и программно добавляет их в корзину.

На веб-сайте 1 можно добавить следующий код в функции. php

add_action( 'init', 'set_cart_cookie' );

function set_cart_cookie()
{
  global $woocommerce;
  $items = $woocommerce->cart->get_cart();
  $item_skus[];

  foreach($items as $item => $values) {
         $_product =  wc_get_product( $values['data']->get_sku());
         $item_skus[]=$_product;
     }
  setcookie("shared_cart", $item_skus, time()+30*24*60*60);
}

И на веб-сайте 2 используйте этот код:

add_action( 'init', 'read_cart_cookie' );

function read_cart_cookie()
{
  if(isset($_COOKIE['shared_cart'])){
    $cookie_skus=$_COOKIE['shared_cart'];
    global $woocommerce;
    $woocommerce->cart->empty_cart();

    foreach ($cookie_skus as $sku)
    {

      $woocommerce->cart->add_to_cart(wc_get_product_id_by_sku( $sku ));

    }
  }
}

Приведенный выше код предназначен исключительно для сценария, в котором веб-сайт 2 всегда следует содержимому cookie, установленному для веб-сайта 1 дляНастройки элементов в машине, как я полагаю, вы можете изменить код, как вы хотите. Кроме того, элементы на веб-сайте 1 должны иметь те же элементы, что и элементы на веб-сайте 2, чтобы мой код работал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...