Передача данных из Woocommerce в CRM
-
Доброго времени суток уважаемые посетители данного форума. Буду рад если сможете мне помочь с моим вопросом.
Есть интернет-магазин, в котором нужно настроить передачу параметра через оформление заказа. Т.е пользователь добавляет товар в корзину, нажимает кнопку «Оформить заказ», после чего в CRM улетает, что есть новый заказ на артикул данного товара.
Есть код, который как пример, предлагают в поддержке данной CRM.
<?php $userName = "admin"; //логин пользователя от которого будет запущен процесс $password =""; //пароль пользователя от которого будет запущен процесс $token = "6e8e72fb-0178-4d8c-a84d-d354debe4de9"; //токен процесса $instanceName = $_POST[’company’]; //название экземпляра процесса $data = new stdClass(); $data->Items = new stdClass(); $data->Items->WebDataItem = array(); // Формируем массив контекстных переменных. $data->Items->WebDataItem[0] = array("Name"=>"NazvanieOrganizacii", "Value"=>$_POST[’company’]); $data->Items->WebDataItem[1] = array("Name"=>"FIOKontaktnogoLica", "Value"=>$_POST[’fio’]); $data->Items->WebDataItem[2] = array("Name"=>"VersiyaProgrammnogoProdukta", "Value"=>$_POST[’version’]); $data->Items->WebDataItem[3] = array("Name"=>"KolichestvoLicenziy", "Value"=>$_POST[’licence’]); $data->Items->WebDataItem[4] = array("Name"=>"TelefonKontaktnogoLica", "Value"=>$_POST[’phone’]); $data->Items->WebDataItem[5] = array("Name"=>"Adres", "Value"=>$_POST[’adres’]); // Массив параметров необходимых для запуска процесса $parameters = array( "userName"=>$userName, "password"=>$password, "token"=>$token, "instanceName"=>$instanceName, "data"=>$data); if($_POST[’Run_Workflow’]) { // Создание SOAP-клиента по WSDL $client = new SoapClient("URL?WSDL", array("location"=>"URL")); //Вызов метода Run для запуска экземпляра процесса $client->Run($parameters); echo "Спасибо за заказ! В ближайшее время с Вами свяжется наш специалист."; } ?>
Я попробовал через вебхук, в funtions.php добавить:
add_action( 'woocommerce_thankyou', 'my_custom_tracking' ); function my_custom_tracking( $order_id ) { // Получаем информации по заказу $order = wc_get_order( $order_id ); $order_data = $order->get_data(); // Получаем информации по товару $order->get_total(); $line_items = $order->get_items(); foreach ( $line_items as $item ) { $product = $order->get_product_from_item( $item ); $sku = $product->get_sku(); // артикул товара // Передаем информацию $userName = "wwe"; //логин пользователя от которого будет запущен процесс $password ="#AH%ss6a123}edH"; //пароль пользователя от которого будет запущен процесс $token = "4ffe1575-853d-49c9-89e2-60877b8btt4e"; //токен процесса $instanceName = $sku['sku']; //название экземпляра процесса $data = new stdClass(); $data->Items = new stdClass(); $data->Items->WebDataItem = array(); // Формируем массив контекстных переменных. $data->Items->WebDataItem[0] = array("Name"=>"sku", "Value"=>$sku['sku']); // Массив параметров необходимых для запуска процесса $parameters = array( "userName"=>$userName, "password"=>$password, "token"=>$token, "instanceName"=>$instanceName, "data"=>$data); if($_POST['Run_Workflow']) // Создание SOAP-клиента по WSDL $client = new SoapClient("http://flatserver.migal.ru:8000/Modules/EleWise.ELMA.Workflow.Processes.Web/WFPWebService.asmx?WSDL"); //Вызов метода Run для запуска экземпляра процесса $client->Run($parameters); }}
но это не сработало.
Может кто сможет мне помочь разобраться с этим вопросом.
- Тема «Передача данных из Woocommerce в CRM» закрыта для новых ответов.