Публикация в группе: Полезное для WordPress

Категории группы: Полезное

Это статья является продолжение вот этой статьи. В ней мы рассмотрим более интересные примеры работы с WooCommerce.

Содержание

  • 1. Добавление товаров на основе произвольного типа записи(Custom Post Type) в корзину.
  • 2. Изменение цены товара на лету при добавлении в корзину.

1. Добавление товаров на основе произвольного типа записи(Custom Post Type) в корзину.

К примеру у нас есть проект на WordPress, где каталог товаров создан на основе произвольного типа записи(Custom Post Type). И нам нужно сделать возможность добавлять в корзину, и создать заказы используя WooCommerce. На самом деле все не так сложно как может показаться.

Нам потребуется вот такой класс:

Выносим его в отдельный файл(class-data-store-cpt.php). И подключаем в functions.php вот таким способом:

В $customPostType указываем свой тип записи.

Важно, поле в котором хранится цена, должно называться "_price", как у WooCommerce.

2. Изменение цены товара на лету при добавлении в корзину.

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

Код добавления товара будет иметь вот такой вид:

$cart_item_data - массив с новыми значениями для товара(ID товара, цена и название);

Что бы увидеть изменение в корзине, нужно сделать перерасчет:

Суть здесь в том, что при добавлении товара в корзину, мы передаем массив $cart_item_data с нужными значениями. И во время перерасчета товаров в корзине, делаем проверку на их существование if(isset($value["custom_price"])). Если они существуют, то меняем текущие значения товара, на те которые передали в $cart_item_data.

Таким способом создается эффект изменение цены товара на лету.

1

Автор публикации

не в сети 1 день

spoot@bk.ru

78
Комментарии: 51Публикации: 29Регистрация: 09-03-2016Продаж/Покупок: 195/3