Плагин Заказать в один клик для WooCommerce

Buy one click WooCommerce

Официальное название плагина «Buy one click WooCommerce»
И так появилась задача на некоторых сайтах организовать возможность заказа «В один клик» или как в некоторых интернет магазинах эта кнопка называется — кнопка «Быстрого заказа». В результате некоторых манипуляций получился плагин или расширение для WordPress с установленным WooCommerce — «Buy one click WooCommerce».
Возможности плагина довольна скромные:
1) Первое и самое важное — он абсолютно бесплатен.
2) Для кого-то это будет достоинство, а для кого то недостаток, но плагин имеет свою базу по заказам и не интегрирован в общую базу заказов WooCommerce.
3) Есть система статусов. Сделано для того что бы понимать какой заказ менеджер магазина отработал, а какой еще нет.
3) Возможность настройки отображения полей и их названий.
4) Для тех кто в «коде» — код имеет комментарии и в принципе поддается изменениям без глубокого его познания. (Всего в плагине три основных класса: Класс для работы с JavaScript, базовый класс — организация настроек плагина и страниц, класс функционала — прочий php код и функционал).
5) CSS формы и кнопки разнесены в отдельные файлы, можно менять на вкус и цвет.
6) Есть уведомления на email о заказе, как для клиента, так и для менеджера
— Письма уходят только в HTML с скромной таблицей и данными о заказе
— Письма отправляются только через функцию wp_mail, от отдельного smtp было решено отказаться. Но отсутствие smtp вы можете компенсировать любым плагином WordPress поддерживающим замену стандартного вызова wp_mail на свою функцию.

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

Ссылка на скачивание на сайте WordPress
Ниже, плагин «заказать в один клик» — «Buy one click WooCommerce», в картинках.


Обновление 1.1 от 9.06.2015
* Исправлены некоторые ошибки в работе плагина
* Добавлена опция включения/отключения показа кнопки
* Добавлены опции «обязательные поля»
— Теперь поля можно отмечать как обязательные для заполнения

* Добавлены варианты поведения формы при отправке заказа
-Вариант «Ни чего не делать», всё по старому
-Вариант «Закрыть через указанное количество мсек»
-Вариант «Показать всплывающее сообщение и закрыть»
-Вариант «Сделать перенаправление на произвольный URL»
* В Шаблон email сообщения добавлены ФИО и Телефон клиента
-Если ФИО или Телефон не получены — тогда пустые поля
(Шаблон сообщения можно поправить под себя в файле «inc/function-class.php» имя метода «htmlEmailTemplate»)
* CSS формы заказа «css/button21.css» и «css/form.css»
* CSS дополнительного сообщения «css/formmessage.css»

Обновление 1.2 от 14.06.2015
Добавлена поддержка отправки смс при совершение заказа. Поддерживаемый шлюз СМСЦ
SMS-центр


Обновление 1.3 от 25.08.2016

1) Форма быстрого заказа теперь не присутствует в html страници постоянно, а подгружается по запросу через ajax

2) Ссылка на глобальный обработчик ajax берётся из вашего сайта, ранее ссылка была жёстко указанна.

3) Новая опция в общих настройках, теперь все новые заказы могут дублироваться в общую таблицу заказов Woocommerce. Запись в таблицу плагина — не отключаемая опция.

4) Введение опции с добавлением быстрого заказа в таблицу Woo, позволяет использовать стандартный механизм отравки писем Woo клиенту о новом заказе.


Обновление 1.4 от 08.09.2016

1) Новая опция вывода кнопки купить в категории товара
2) Некоторые переработки функций
3) Появилась возможность вывести кнопку при помощи шорткода

Итак пока первый опытный шорткод «Кнопка купить»[viewBuyButton] Шорткод кнопки нужно вставлять в циклах вывода товара, где возможно получить ID товара. При этом Шорткод загружает для себя стили и скрипты,а кнопка «купить» будет показана даже если у вас выключена галочка «Включить показ кнопки»


Обновление 1.5 от 14.06.2017

  1. 1) Новый шорткод
    2) Правка мелких и вредных ошибок
    PS: в комментарии по существу!

Скачать бесплатный плагин покупки в один клик для WooCommerce

PS: Продажа плагина для WordPress «Купить в один клик» или выдача его за свою разработку запрещена.

 

Плагин Заказать в один клик для WooCommerce: 1 026 комментариев

  1. Нет действий после нажатия на кнопку в форме. не закрывает, не редиректит. но на почту заказ отсылает.
    а так плагин класный. могу адаптировать под wpml

      1. Снял галочку в поле » Установка галочки включит механизм когда заказы будут попадать не только в таблицу плагина, но и в меню «Заказы» — Woocommerce» заработало!

  2. Добрый день! Плагин супер! Все четко работает. ТОлько один момент. Вывел кнопку в карточку товара. При нажатие модальное окно открывается с небольшой задержкой. Типа Нажал прошла гдето +- 1 секунда и окно открылось. И как можно редактировать стиль надписи Спасибо за заказ которая появляется после нажатия кнопки заказать?

    1. Добрый день! Скорее всего задержка вызванна долгим ответом сервера на ajax запрос по вызову формы. Стили лучше править через файл стилей плагина, в соответствующей папке в структуре плагина.

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

    1. Добрый день! Вы можете самостоятельно дописать нужный текст в wp-content/plugins/buy-one-click-woocommerce/inc/function-class.php в метод «static function viewBuyForm» где нибудь после закрывающего тэга form. Но при следующих обновлениях плагина, эти изменения затрутся.

  4. Дополнительное поле не присылает информацию на почту. Еще хотелось бы иметь возможность настраивать другие дополнительные поля (checkbox, radio, number и т.д.).

    1. Насчет того, что не работает дополнительное поле, а файле buy-one-click-woocommerce/inc/javascript-class.php — строка 154:
      ‘dopinfo’ => $dopiczakaz,

      Изменил на ‘dopinfo’ => $dopinfo,
      Заработало.

  5. Никак не могу вставить в плагин Buy one click перед кнопкой заказать ссылку с политикой обработки персональных данных.может внедрите это поле пожалуйста.

  6. Добрый день! Спасибо что создали столь нужный плагин.
    Но у меня есть с ним маленькая проблема.
    Версия WP 4.8, Woo 3.1, Buy One Click 1.5.1 (более ранние версии не пробовал), тема кастомная

    В консоли браузера вот такая ошибка:

    jquery.js?ver=1.12.4:4 Uncaught SyntaxError: Unexpected token < in JSON at position 0
    at JSON.parse ()
    at Object.success (form.js?ver=4.8:40)
    at i (jquery.js?ver=1.12.4:2)
    at Object.fireWith [as resolveWith] (jquery.js?ver=1.12.4:2)
    at y (jquery.js?ver=1.12.4:4)
    at c (jquery.js?ver=1.12.4:4)
    at Object.send (jquery.js?ver=1.12.4:4)
    at Function.ajax (jquery.js?ver=1.12.4:4)
    at saveButton (form.js?ver=4.8:31)
    at HTMLInputElement. (form.js?ver=4.8:134)

    но только если в настройках включить создание заказов в Woo. Остальные режимы работают корректно.

    1. Добрый день! Эээмм, видимо во время ответа php скрипта возникают «Notice» уведомления — надо будет дофиксить в следующей версии плагина. Спасибо!
      Временное решение для вас, это отключить на сайте не только вывод ошибок и предупреждений, а и уведомления(Notice).

    1. Добрый день! Возможно по причине установленной галки — копирования заказов в таблицу Woo.

  7. Здравствуйте, на WP 4.7.5 с темой оформления Phone Repair по клику на кнопку быстрого заказа ничего не происходит — ни в карточке товара, ни в разделе каталога…

    1. Понял, почему не работало! Теперь окошко появляется! После того, как переименовал файл /wp-content/plugins/woocommerce/assets/js/frontend/cart-fragments.min.js

      Надеюсь, автор пофиксит баг в ближайшее время

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

  9. Здравствуйте.
    Если выбрать для отображение в форме пункты e-mail или примечание и не ставить галочку «обязательные», то при заполнении формы письмо не отправляется, если эти поля » e-mail или примечание» не заполнить. Это можно исправить?
    И ещё одно пожелание. Если не заполнять поля и нажать на кнопку отправить, то возможно ли увидеть какую-нибудь реакцию на нажатие в виде надписи, что мол не все поля заполнены или что то в этом роде?

  10. Здравствуйте,
    хочу отписаться (перестать следить за этой темой). Перехожу по ссылке в письме, и не могу отписаться, Ошибка:
    Comment Manager
    Error thrown
    [] operator not supported for strings

    1. Добрый день! Видимо косяк плагина при помощи которого реализована подписка. Спасибо за информацию, посмотрю как можно исправить положение. Временное решение — добавьте сообщения в спам.

  11. Здравствуйте! Внедрите пожалуйста другое местоположение кнопки — «Напротив цены». Чтобы они были параллельно с ценой. Будет вообще ништяк, либо подскажите (если не трудно), как отредактировать, чтобы так получилось?

  12. Добрый день, можно ли сделать, чтобы модальное окно создавалось посредством фреймворка Bootstrap?

  13. Здравствуйте! Спасибо за плагин. Подскажите пожалуйста: использую плагин Quick View от YITH. Во всплывающем окне быстрого просмотра есть кнопка заказать, но, при нажатии на нее, форма не появляется и ничего не происходит (только слегка дергается страница на заднем плане), Вы не знаете как сделать так, чтобы кнопка срабатывала в этом окне?

    1. Добрый день! К сожалению не было возможности попробовать работу «Быстро клика» в связке с «Quick View от YITH.», по этому не могу подсказать. В консоли браузера можете посмотреть есть ли отправка запроса на форму и если есть, то посмотреть не перекрываются ли стили окон.

      1. Спасибо за ответ. При нажатии на кнопку в окне быстрого просмотра, в консоли браузера отправки запроса нет.

        1. Только что обнаружил что у меня и в карточке товара форма не отправляется. Непонятно почему, ведь проверял плагин после установки и все работало. Может быть конфликтует с чем-то.

          1. Нет, в карточке товара форма работает, но если не ввести номер телефона (отмеченный как обязательное поле), то ничего не происходит. Можно как-то выводить просьбу заполнить обязательное поле?

  14. Поле имеет атрибут required, но почему-то не меняет цвет и не выдает сообщение, если его не заполнить. Буду разбираться. А в Quick View все равно форма не всплывает 🙂

  15. Доброго времени суток! Не работает кнопка оформления заказа на всплывающей форме. Все поля заполнены. Но при нажатии ничего не происходит. Заказ не появляется в админке и форма не пропадает (хотя в настройках выбрал скрывать через 2000мс). В чем может быть проблема?
    Вариант со снятием галочки напротив пунка о добавлении заказа в таблицу woocommerce пробовал. Но он не сработал.

    1. Использовал шорткод, когда добавлял кнопку на карточку товара. Когда поставил кнопку в «произвольном исполнении», то заказ стал идти, но только в таблицу плагина, а не в таблицу вукоммерса, хотя галочка напротив соответствующего пункта поставлена

  16. Добрый день!
    Это снова я. С сайтом раки96.
    Ничего не делали. Но опять та же проблема возникла. Снова благодарности нет для клиента.
    И они снова по 3 раза оставляют в 1 клик. А потом сдаются.

        1. Тогда может всё сломалось после обновления плагина? Последнее обновление было связанно с добавлением новых шаблонов отображения формы.

  17. Добрый день.
    Дело в том, что с 1 июля 2017 года по российскому законодательству запрещается запрашивать личные данные пользователя без его согласия на их использования. И за это сейчас большие штрафы. Регулируется это федеральным законом «О персональных данных» (N 152-ФЗ).
    По сему получается, что ваш плагин заставляет пользователя нарушать закон. Можно ли добавить в него возможность поставить галку «я прочел пользовательское соглашение» перед отправкой запроса?

    1. Добрый день! Вы можете самостоятельно изменить шаблон формы, дописав в него что то вроде этого «Нажимая на кнопку Отправить вы соглашаетесь с политикой обработке персональных данных». В будущем данная возможность будет добавлена из настроек плагина.

  18. Дмитрий, если вам требуется платная поддержка. Напишите пожалуйста на izm@zixn.ru, по возможности предоставьте доступ к сайту и изложите возникшую проблему.

    1. Добрый день! Нет, такой возможности нет и скорее всего это в ближайшее время не будет реализовано.

  19. Здравствуйте!

    После заполнения формы, ничего не происходит, выбирал разные параметры: «редирект» «закрыть окно» и т.д окно остаётСЯ открытым и нет не каких оповещений… Так же если ставить галочку «отправлять в меню «Заказы» — Woocommerce» то нет информации о заказе в плагине!

      1. Синхронный XMLHttpRequest в основном потоке является устаревшим из-за его пагубного влияния на работу конечного пользователя. Для получения дополнительной помощи обратитесь к http://xhr.spec.whatwg.org/

        1. При отправке формы, сайт возвращает не ожидаемый результат, скорее всего это сообщение от php(уведомление или варнинг). Попробуйте отключить вывод ошибок PHP через файл wp-config.php или панель хостинга.

  20. Для начало загляните в файл wp-config.php что лежит в корне вашего сайта. Там найдите строку define( ‘WP_DEBUG’,…..); Если там значение true — вывод ошибок работает, если false — ни чего не меняйте.

  21. Некоторые наблюдения (вдруг кто-то столкнется с такой же ситуацией):
    Если стоит галочка «Установка галочки включит механизм когда заказы будут попадать не только в таблицу плагина, но и в меню «Заказы» — Woocommerce», то заказы попадают только в список заказов woocommerce, но не в список заказов плагина. И самое главное, что при этом форма не показывает сообщение об отправке и не закрывается, если не введен e-mail (хотя он не указан обязательным для заполнения полем).
    Без вышеуказанной галочки всё работает как надо (заказы, само собой, не попадают в список заказов woocommerce, а только в список плагина).

    1. Такая же проблема. В WooCommerce Версия 2.6.8 работало отлично. А обновился на Версия 3.1.1 и не отправляются заказы (если стоит галка «Установка галочки включит механизм когда заказы будут попадать не только в таблицу плагина, но и в меню «Заказы» — Woocommerce»)

  22. Здравстуйте, у меня такая же проблема, как и у большинства — по клику на кнопку ничего не происходит. Установка галочки включит механизм когда заказы будут попадать не только в таблицу плагина, но и в меню «Заказы» — Woocommerce» —- снимал галочку, включал галочку, ничего не меняется все-равно. Помогите, пожалуйста! Вот сам сайт:

    http://miamitats.com.ua/shop/perevodnye-tatoo-dlya-volos-i-tela/perevodnye-tatu-dlya-volos-i-tela-stars/

    Кнопка, как видите, не работает. Вот что выводит в консоль:

    http://clip2net.com/s/3NE9Pnj

  23. Добрый день! Также заработала, после того, как убрал заказы в таблицу Woocommerce, но только вот на почту уведомление не приходит! Может подскажете, что можно сделать?

  24. Здравствуйте! Плагин хороший и полезный… но, к сожалению, до сих пор не доработанный.
    То что смог сам исправить:
    1. Не работает дополнительное поле… Как уже писал Roman выше, исправляется заменой ‘dopinfo’ => $dopiczakaz на ‘dopinfo’ => $dopinfo в файле buy-one-click-woocommerce/inc/javascript-class.php
    2. В письме не приходит e-mail отправителя — дописал в файле buy-one-click-woocommerce/inc/function-class.php по аналогии с другими полями
    То что не смог исправить (в силу слабого понимания js) и надеюсь на помощь мастера (до выхода обновления):
    1. Поле «Согласие на обработку персональных данных» — саму эту галочку не трудно воткнуть в файл function-class.php, но проверка на заполнение этого поля не происходит (хотя я добавил «requered» и даже класс «buyvalide»)
    Я принимаю условия… В файле form.js вижу функцию (jQuery(«.b1c-form»).find(«.buyvalide»).each(function () { // проверяем заполенность полей), но не понимаю почему не срабатывает.. (
    2. Опять же, как уже здесь писали, очень не нравится что нет сообщений о незаполненных обязательных полях (хотя бы вернуть те стандартные, которые отображаются браузером в полях со свойством requered)

    Надеюсь на помощь

    1. Добрый день! Отличные замечания. Буду ориентироваться на них в следующем выпуске.
      ‘dopinfo’ => $dopiczakaz — Вот помню, менял там что то, видимо вернул я вся назад по ошибке 🙂
      «(jQuery(«.b1c-form»).find(«.buyvalide»).each(function () { » достаточно устаревший вариант, скорее всего будет переписан.

      1. А как можно «временно» самому настроить валидацию собственного чекбокса и отображение сообщений о незаполненных полях? (пока не выло обновление)… надо какую-то функция в form.js добавить? 😉

    2. Игорь, а подскажите, пожалуйста, подробнее, что необходимо поправить, чтобы приходило на email уведомление о заказе товара!

      1. У Вас вообще письма не приходят? Тогда Вам вероятно нужно заполнить поля во вкладке «Уведомления» в настройках плагина — в частности поля «Email От кого» и «Копия на email»…
        А вообще лучше автора плагина спрашивать конечно )

        1. Да, совсем не приходят, но в том то и дело, что все поля заполнены, но все равно ничего нет на почте(в спаме тоже)! К вам обратился, т.к. п.2 связан с почтой у вас, не заметил, что там другая проблема была))

          1. Добрый день! Какой у вас хостинг? Вы не пробвали ставить плагин который заменяет поведение функции mail (или wp_mail). Например https://ru.wordpress.org/plugins/easy-wp-smtp/. Он позволяет отправлять исхдящие письма не силами вашего хостинга, а силами реальной почтовой системы(яндекс, гугл, маил.).
            Но в этом случаем возможно замедление при отправке формы, так как smtp требуется времени на соединение.

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

  26. Форма «съезжает» при открытии на мобильных устройствах. Курсор намного ниже поля, невозможно перейти на следующее поле,так как курсор «съехал». На ПК все в порядке. Возможно как то исправить?

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *