Меню

Настройка woocommerce custom price

Плагины оптовых цен и скидок в WooCommerce

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

При реализации этой опции в магазине WooCommerce вы можете столкнуться с несколькими типами задач, для каждой из которых есть свой подходящий плагин:

Давайте разберем все эти варианты.

WooCommerce Wholesale Prices

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

Основные функции:

В принципе, тут и настраивать особо нечего. После установки у вас добавится роль пользователей Wholesale Customer, для которой будут доступны оптовые скидки. В разделе «Woocommerce» – «Wholesale Roles» вы сможете добавлять/удалять новые роли.

Параметры модуля задаются в разделе общих настроек WooCommerce в одноименной вкладке.

Непосредственное задание скидок для опта производится в карточке товаров:

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

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

WooCommerce Bulk Discount

На данный момент модуль загрузили более 20 тысяч раз, и он точно будет работать на версиях системы от 3.6. до 4.9.14. (я успешно тестировал на 4.8.2). Также в описании заявлена поддержка WooCommerce 2.0 и 3.3. Как там дела обстроят дальше непонятно, т.к. решение не обновлялось года два, хотя блок ошибок показывает, что все баги исправлены. В моем случае был установлен WooCommerce 2.6.x + WP 4.8.2, проблем не наблюдалось.

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

Чем-то отдаленно напоминает промокоды, но логика работы немного иная. Если мои расчеты вам показались непонятными, советую внимательно вчитаться в них еще раз (с первого раза может не получится). В крайнем случае смотрите дополнительные примеры в FAQ на официальной странице модуля в wordpress.org.

Основные функции Bulk Discount

Настройка оптовых цен и WooCommerce скидок

Первым делом после активации заходим в раздел настроек WooCommerce, где появится новая вкладка «Bulk Discount». Здесь, по сути, вы сможете реализовать те или иные функции плагина, о которых говорилось выше.

Среди параметров найдете:

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

Теперь перейдем непосредственно к заданию скидок с плагином Bulk Discount. В админке на странице редактирования товаров появится одноименна вкладка (для обычного и вариативного выглядит одинаково).

Здесь, во-первых, активируем работу модуля (галочка напротив enabled), а затем добавляем правила зависимости цены от количества WooCommerce товаров в корзине. Вы можете создавать до 5-ти уровней, например, для 10, 20, 50 шт. и т.п.

В поле description обязательно напишете информацию о ваших скидках (поддерживается HTML). Данное описание покажет какая стоимость продукции будет при заказе определенного ее количества. Это важно(!), поскольку основная цена всегда отображается такой, как задана в админке, а изменения пользователь увидит уже в корзине или при оплате.

Читайте также:  Настройки yota точка доступа номер дозвона

В целом плагин Bulk Discount является отличным решением для внедрения оптовых цен в WooCommerce магазинах. Работать с ним легко, есть все необходимые настройки и поддерживаются вариативные товары. Единственное, что печалит — авторы давно не уделяли внимание своему творению. Со своей стороны я могу лишь сказать, что модуль без проблем функционирует на версии WooCommerce 2.6.x и системе Вордпресс 4.8.x-5.x. Ручаться за остальные случаи, увы, не могу.

Итого. В целом оба плагина оптовых скидок неплохо себя зарекомендовали, хотя не исключаю, что в репозитории имеются и другие похожие решения. Например, в ходе написания статьи обнаружил модуль Discount Rules for WooCommerce, который весьма активно обновляется и имеет весьма положительный фидбек. Если вы знаете еще какие-то альтернативы для задания оптовых цен в магазине, пишите в комментариях.

Источник

Настраиваем woocommerce

Метки

Настраиваем различные аспекты плагина woocommerce, под текущие задачи.

Ваша корзина пуста

Шаблон для настроек страницы корзины (когда она пуста) находится в папке woocommerce (локализованная в теме)/cart/cart-empty.php

Можно отцентрировать и добавить какое-либо изображение. Например:

Лэйбл «Распродажа»

Чтобы изменить слово «Распродажа» — надо отредактировать перевод woocommerce.

Проценты скидки

Изменение кнопок, ссылки, хлебные крошки

Добавляем в functions.php

Товары без цены

Для простых товаров:

Для вариативных (и простых) товаров:

Кнопки в корзине

href=»javascript:history.back()» — возврат на предыдущую страницу

Можно вернутся на две страницы назад — для этого ставим эквивалентную команду history.go(-1)
и меняем на необходимое количество: href=»javascript:history.go(-2)»

Товар без цены, товар которого нет в наличие

Данные код выдает фатальную ошибку. Необходимо доработать!

Не работает с мини-корзиной ajax

Чтобы не отображать товар, которого нет в наличие. Нужно в настройках Woocommerce/Товары/Запасы поставить соответствующую галку Спрятать отсутствующие товары из каталога.

Чтобы спрятать кнопки у товаров, которых нет в наличие и товаров без цены

Чтобы изменить кнопки у товаров с отсутствующей ценой и которых нет в наличие

Символ рубля

Поделится информацией с друзьями

Альтернативная галерея WC

При попытке совместить в одной галереи различные удачные решения получались различные конфликты. Родной слайдер никак не хочет синхронизироваться с миниатюрами. При подключении Zoom Magnifier (например YITH) ломается вывод миниатюр, особенно Читать далее »

Подкатегория за подкатегорией

В одной из ранних статей мы отдельно от основного вывода WC выводили подкатегории. В этой статье мы усложним код вывода категорий и сделаем у категорий и вывод товаров. Это даст Читать далее »

Обзор плагинов по фильтрации товаров WC

В данном обзоре мы будем приводить сильные и слабые стороны различных плагинов по созданию фильтрации товаров WC. Причем рассмотрим как платные, так и бесплатные решения. WooCommerce Products Filter (50 000) Читать далее »

Добавить комментарий Отменить ответ

Куда нужно вставить этот код : Проценты скидки

// Добавляем значение сэкономленных процентов рядом с ценой у товаров

Ну и примеры у вас). Данную задачу можно решить разными способами:
1. Фильтром (WooCommerce Products Filter, YITH WooCommerce Ajax Product Filter).
2. Дополнительным вызовом — по типу как здесь. Но для товаров woocommerce еще так не делал.
3. Локально можно вывести товары по меткам шорткодом

Доброй ночи. Подскажите, а как сделать сортировку по наличию товара?

Вынес пользовательские варианты сортировки в отдельную статью. Дополнил вариантом сортировки по наличию.

Чтобы изменить кнопки у товаров с отсутствующей ценой и которых нет в наличие — скопировал код, поставил. Фатальная ошибка 🙂
Пишет о синтаксической ошибке в строке с elseif, ругается на <

Читайте также:  Настройка соединения между двумя компьютерами по wifi

Да вы правы! Фатальная ошибка.. Спасибо за замечание. Постараюсь на днях доработать этот код и внести исправления.

Источник

Добавление произвольных полей в товарах Woocommerce. Большая инструкция

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

Продолжим. Вот такая штука у нас получиться.

Теория. Необходимые хуки и функции

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

Хуки на вкладках

Вкладка «Основные»

На вкладке «Основные» можно использовать несколько хуков.

Вкладка «Доставка»

Данная вкладка активна только для физических товаров. Все хуки на вкладке «Доставка».

Вкладка «Запасы»

Все хуки на вкладке «Запасы».

Вкладка «Сопутствующие»

Все хуки на вкладке «Сопутствующие».

Вкладка «Атрибуты»

Все хуки на вкладке «Атрибуты».

Вкладка «Дополнительно»

Все хуки на вкладке «Дополнительно».

Вкладка «Вариации»

Вкладка видна только для вариативных товаров. Все хуки на вкладке «Вариации».

Хуки для сохранения значения полей

Для сохранения наших полей будем использовать хук.

Это базовый хук, который позволяет сохранять значения произвольных полей для простых товаров. Хук передает ID товара.

Как создавать произвольные поля для вариативных товаров смотрите в отдельной статье.

Хуки для вывода полей

Поля — дело индивидуальное для каждого товара. Товар в Woocomerce — это запись, соответственно можно выводить товары и просто редактируя нужный файл. Но это не наш метод. А потому будем использовать хуки. Например, используем хук для вывода поля перед и после кнопки «Добавить в корзину».

Функции вывода полей

Согласно API Woocommerce существуют такие функции добавления полей

Более подробно посмотреть функции можно в документации

Вот эти функции и будем использовать. Но это еще не все, для большего эффекта, напишем собственные поля, независимые от API.

Практика. Создаем, сохраняем и выводим произвольные поля

Создание полей

Итак, начнем. Создаем функцию и прикручиваем ее к нужному хуку.

Пока ничего сложного. Просто функция, которая ничего не делает. Блок с классом options_group позволяет визуально разделять группы полей с помощью нижней границы.

Текстовое поле

Обратите внимание, на два момента.

Во-первых, атрибут custom_attributes позволяет передать в функцию любые дополнительные параметры. В данном конкретно случае — это параметр определяет обязательное поле.

Числовое поле

Это то же простое текстовое поле, но с типом number. Тип из арсенала HTML5 позволяет ограничить ввод данных только числами.

Можно определить произвольные атрибуты:

Атрибут step — это значение по умолчанию, min — минимальное значение. Ожидается ввод любого положительного числа

Текстовая область

Ничего сложно. В конкретном случае еще переданы дополнительные параметры (общие для все типов полей):

Выпадающий список. Select

Поле с чекбоксом. Checkbox

Просто поле с галочкой. Возвращает Да/Нет.

Радиокнопки. Radio buttons

Примерно тоже самое, что и селект, только внешний вид разный. Хотя селектом пользоваться иногда удобнее.

Произвольное поле. Выбор товаров с поиском

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

Произвольная группа полей

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

Читайте также:  Восстановление к заводским настройкам win 10

Полный код со всеми видами полей, в том числе и произвольными

Если коротко, то можно создать любое поле. Все зависит только от ваших желаний и умений.

Сохранение полей

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

Код рабочий. Идеи по улучшению, пишите в комментариях.

Вот так должно получиться в итоге

Вывод полей

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

Тоже самое, только используя методы WooCommerce

Перед кнопкой Добавить в корзину

Выведем текстовое, цифровое и область текста.

Самый простой вариант

Тоже самое, только используя методы WooCommerce

Вариант с проверками и форматированием

Тоже самое, только используя методы WooCommerce

Вывод полей с форматированием будет выглядеть так

После кнопки Добавить в корзину

Выводим заначения селекта, радиокнопки и чека. Данные поля работают по условию и выводят что одно.

Пример кода (написано на коленке для примера, но все работает)

В итоге получаем.
Были такие значения в админке

И получаем, такой вывод

Вывод группы полей во вкладке Дополнительная информация

Используем хук woocommerce_product_additional_information и получаем такой код

Вот так это выглядит

Вывод выбранных товаров перед вкладками с информацией

Ну и самое вкусное: выведем список выбранных товаров перед вкладками. Зачем так делать не занаю, но вдруг кому пригодиться.

Итак, наше поле возвращает нам массив ID товаров, значит нам достаточно запихать сей массив в функцию wc_get_products и вывести нужные товары. Примерно так, выводим список заголовков выбранных товаров.

Код не идеальный, надо конечно и проверки сделать, но все работает. Получим такой вот список выбранных товаров

Вывод значения полей на страницах архивов

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

Перед ценой

После цены

Хуков много, можно по разному вывести при необходимости.

Группировка произвольных полей на произвольной вкладке

Любая вкладка в метабоксе WooCommerce состоит из двух частей:

Создание произвольной вкладки

Изменяя атрибут priority можно изменять положение вкладки в общем списке. Чем больше значение, тем ниже вкладка будет располагаться.

Атрибут class позволяет добавить к вкладке любой класс. Но используя стандартные классы WooCommerce, можно управлять поведением вкладки.

Все классы для управления поведением

Изменение иконки вкладки

Для иконки можно использовать что угодно. SVG, просто картинки или существующие шрифты Dashicons или набор самого WooCommerce.

Для изменения иконки достаточно добавить немного стилей:

Добавление содержимого вкладки

Для примера добавим текстовое поле и произвольную группу полей.

Получаем такой вид

А дальше уже стандартно. Сохраняем значения и выводим там где требуется.

Для сохранения и вывода рекомендую использовать методы самого WooCommerce.

Реальный кейс

Задача

Решение

Первое. Создаем поля

Это самое простое. Нужна кнопка, которую можно сформировать из двух полей:

Второе. Вывод полей

Третье. Результат

Еще один кейс

Задача

Решение

Первое. Создаем новое поле

Второе. Выводим значение

Третье. Результат

Заключение

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

На этом все, если остались вопросы, пишите в комментариях, не забудьте поделиться статьей в соцсетях. Всем успехов, пока-пока!

Источник

Adblock
detector