Woocommerce - добавление продуктов с помощью Javascript / PHP - PullRequest
0 голосов
/ 22 апреля 2019

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

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

Я знаю, что яМне понадобится действие, которое запускает что-то вроде:

WC()->cart->add_to_cart( 'product_id', 'quantity'); 

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

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 23 апреля 2019

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

Добавить радиовходы к одному продукту перед добавлением в корзину (крючок):

add_action("woocommerce_before_add_to_cart_button", "your_input_render_function_here");

Добавить новые входные данные из переключателей в элемент корзины (фильтр):

add_filter("woocommerce_add_cart_item_data", "your_filter_function_to_capture_data_here");

Захват данных и рендеринг в корзину (фильтр):

add_filter("woocommerce_get_item_data", "your_cart_render_function");

Наконец, сохраните вновь полученные данные в заказ (крючок):

add_action("woocommerce_checkout_create_order_line_item", "your_function_to_add_to_order")

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

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