Новости Joomla

WT AmoCRM - RadicalMart плагин интеграции интернет-магазина на Joomla с CRM

👩‍💻 WT AmoCRM - RadicalMart плагин интеграции интернет-магазина на Joomla с CRM.Плагин умеет отправлять данные заказа из Joomla компонента интернет-магазина RadicalMart в AmoCRM, а так же оставлять примечания к сделке при смене статуса заказа (выберите необходимые статусы заказа RadicalMart в настройках плагина).Возможности плагина - создание сделок в AmoCRM в момент создания заказа в интернет-магазине RadicalMart- выбор воронки AmoCRM, в которой создавать сделки- выбор тега, которым будут помечаться созданные сделки- в комментарий к сделке при создании заказа пишутся:-- точная общая сумма заказа (Amo CRM не принимает дробные значения в поле бюджет, например с копейками)-- статус заказа-- информация о доставке (способ, адрес и комментарий)-- информация о способе оплаты-- контактные данные покупателя (могут отличаться от данных пользователя, создавшего заказ. Например, если доставка для другого человека)-- прямая ссылка на заказ в панели администрирования сайта-- список товаров заказа (опционально)добавление комментария к сделке при изменении статуса заказа в интернет-магазине RadicalMart (выберите необходимые статусы заказа в настройках плагина)-- добавляет в интерфейс просмотра заказа ссылку на сделку в AmoCRM, если таковая обнаружена (соответствие заказов и сделок хранится в базе данных)-- UTM-метки для сделки. Указывает, если на сайте используется комплект плагинов RadicalForm и WT AmoCRM - RadicalForm.
Для работы плагина необходима установка и настройка библиотеки WT Amo CRM library для Joomla версии 1.3.0 и выше.
Плагин бесплатный. Тестировался на Joomla 5.4 и RadicalMart 2.2.4.
Страница расширения и скачатьТак же:- Интернет-магазин RadicalMart- WT Amo CRM библиотека интеграции Joomla и AmoCRM- RadicalForm плагин обратной связи- WT AmoCRM - RadicalForm - плагин отправки сообщений из RadicalForm в AmoCRM@joomlafeed#joomla #crm #amocrm #radicalmart

Вышли релизы Joomla 6.0.1 и Joomla 5.4.1

Релиз Joomla 6.0.1 и Joomla 5.4.1

Проект Joomla рад сообщить о выпуске Joomla 6.0.1 и Joomla 5.4.1. Это релиз исправлений ошибок и улучшений для серии Joomla 6.1 и Joomla 5.4.

0 Пользователей и 1 Гость просматривают эту тему.
  • 16 Ответов
  • 1333 Просмотров
*

makslm

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Здравствуйте, помогите допилить плагин. Необходимо после регистрации нового пользователя отправить данные на другой сайт по апи.

Собственно файлик

Цитировать
<?php defined( '_JEXEC' ) or die( 'Restricted access' );
//получаем данные нового пользователя
if($isNew){
   $user = JFactory::getUser();
        $first_name = $user->name;
   $email_address = $user->email;
   $phone = $user->phone;

   //отправляем данные
$request = '
&first_name="$first_name"
&email_address="$email_address"
&phone="$phone"
$url = 'http://site.ru/api/';
$sendSpot($url, $request);
   }

function sendSpot($url, $data) {
             $ch = curl_init();
             curl_setopt($ch, CURLOPT_URL, $url);
             curl_setopt($ch, CURLOPT_FAILONERROR, 1);
             curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
             curl_setopt($ch, CURLOPT_TIMEOUT, 7);
             curl_setopt($ch, CURLOPT_POST, 1);
             curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

             curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
             curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);

             $result = curl_exec($ch);

             curl_close($ch);

             return $result;
            }
« Последнее редактирование: 06.10.2016, 14:51:06 от makslm »
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Нужна помощь в написании модуля
« Ответ #1 : 04.10.2016, 11:09:23 »
Так а в чем конкретно помочь? Откуда мы знаем, что там за API, в каком формате они принимают данные.
Да и пароль вы собрались в открытом виде передавать или в виде хеша (что для стороннего сайта будет бессмысленно)?
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

makslm

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Нужна помощь в написании модуля
« Ответ #2 : 04.10.2016, 11:16:16 »
/api?key=[your_key]&first_name=ttt&last_name=dd&email_address=daacsda@dsaa.com
данные передаются в таком виде, нужно выполнить такой запрос и данные запишутся.. необходима отправка только серверно, что б не видно было в адресной строке
« Последнее редактирование: 06.10.2016, 14:51:44 от makslm »
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Нужна помощь в написании модуля
« Ответ #3 : 04.10.2016, 11:19:18 »
Я бы сделал переход по сформированной ссылке с указанными параметрами через AJAX в момент выполнения скрипта
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

makslm

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Нужна помощь в написании модуля
« Ответ #4 : 04.10.2016, 11:21:54 »
Я бы сделал переход по сформированной ссылке с указанными параметрами через AJAX в момент выполнения скрипта
это будет на стороне клиента, и он должен остатся на сайте, а данные уйти
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Нужна помощь в написании модуля
« Ответ #5 : 04.10.2016, 11:46:16 »
это будет на стороне клиента, и он должен остатся на сайте, а данные уйти
ну так я про то и говорю, запрос уйдет, мы остаемся на сайте клиента, еще если тот сайт дает ответ на полученные данные можно сказать клиенту о результатах обработки
Код: javascript
$.ajax({
        type: 'POST',
        url: 'http://site.com/back.php/affiliate/externalSorce/api?key=[your_key]&method=createLead&first_name=ttt&last_name=dd&email_address=daacsda@dsaa.com',
        data: '',
        cache: false,
        success: function(response){
          alert(response);
        }
});
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Нужна помощь в написании модуля
« Ответ #6 : 04.10.2016, 12:06:55 »
А причем тут вообще модуль? если тут плагин нужен. Что такое $isNew
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

makslm

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Нужна помощь в написании модуля
« Ответ #7 : 04.10.2016, 12:09:33 »
ну так я про то и говорю, запрос уйдет, мы остаемся на сайте клиента, еще если тот сайт дает ответ на полученные данные можно сказать клиенту о результатах обработки
Код: javascript
$.ajax({
        type: 'POST',
        url: 'http://site.com/back.php/affiliate/externalSorce/api?key=[your_key]&method=createLead&first_name=ttt&last_name=dd&email_address=daacsda@dsaa.com',
        data: '',
        cache: false,
        success: function(response){
          alert(response);
        }
});

по идеи подходит, а как скрыть ключ что б скрипте не видно было?
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Нужна помощь в написании модуля
« Ответ #8 : 04.10.2016, 12:21:52 »
а как скрыть ключ что б скрипте не видно было?
в данном случае никак
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

makslm

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Нужна помощь в написании модуля
« Ответ #9 : 04.10.2016, 12:30:51 »
А причем тут вообще модуль? если тут плагин нужен. Что такое $isNew
верно подметили.. смешал все в кучу, необходим плагин..

function onUserAfterSave( $data, $isNew, $result, $error ){
if($isNew){$user = JFactory::getUser();
   $first_name = $user->name;
   $email_address = $user->email;
   $phone = $user->phone;}
}
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Нужна помощь в написании плагина
« Ответ #10 : 04.10.2016, 13:53:08 »
Если мне память не из
верно подметили.. смешал все в кучу, необходим плагин..

function onUserAfterSave( $data, $isNew, $result, $error ){
if($isNew){$user = JFactory::getUser();
   $first_name = $user->name;
   $email_address = $user->email;
   $phone = $user->phone;}
}
В первых в плагине $user = JFactory::getUser(); вы получие юзера которых сохранял, а учитывая isNew Получитите либо админа либо гостя. Далее стандартная функция выглядит так
Код: php
public function onUserAfterSave($user, $isnew, $success, $msg)
А данные пользователя получаться так
Код: php
   $first_name = $user['name'];
   $email_address = $user['email'];
насчет телефона хз.
Далее помино "проверки" isNew проверяйте  $success

Теперь работа с api
Во превых дайте ссылку на документацию api ни кто тут от вас не просит писать на форуме секретный ключ.
Во вторых у всех человеческих сервисов с api есть примеры реализации на php.
В третьих.
У любого сервиса есть защиты от спама, лимит и т.д. Поэтому вам надо исключить запросы к api от ботов (можете считать что ваш сайт мега защищен от реги ботов, но все равно доп. проверка не помешает). Как вариант завести таблицу где будут хранится email или другой идентификатор уже отправленных данных. К примеру если вы удалите юзера, то email можно использовать повторно, а если хранить в данные в топ таблице, хоть она прибавит веса, но зато будет защита и сервис вас не заблокирует. Про подобные защиты пишут все сервисы и сайты предоставляющие апи. Ваша обязанность контролировать сколько и какие запросы вы отправляете.
Закончили с проверкой переходим к отправке.
Материалов по данной теме тьма, пользуйтесь поиском. Зависит от того что вы получить к примеру можно использовать file_get_contents() а для формирования параметров запроса http_build_query()

Это максимум чем можно помочь. Если только не писать весь код за вас.

P.S судя знаний php у вас явно маловато *(без обид). Обратитесь в коммерческий раздел или хотя бы возьмите за основу тот же дефолтный contactcreator
« Последнее редактирование: 04.10.2016, 14:16:13 от Septdir »
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

makslm

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Нужна помощь в написании плагина
« Ответ #11 : 05.10.2016, 14:35:06 »
Цитировать
<?php
defined('_JEXEC') or die;
class PlgUserNewLead extends JPlugin
{
   protected $autoloadLanguage = true;
   public function onUserAfterSave($user, $isnew, $success, $msg)
   {
      if (!$success)
      {
         return false;
      }
      if (!$isnew)
      {
         return false;
      }
      $user_id = (int) $user['id'];
      if (empty($user_id))
      {
         return false;
      }
      if ($isNew) {
         $first_name = $user['username']
         $email_address = $user['email'];
         }
         
      if( $curl = curl_init() ) {
      curl_setopt($curl, CURLOPT_URL, 'http://site.ru/api?key=xxx&method=createLead&first_name='$first_name'&last_name=last_name&email_address='$email_address');
      $out = curl_exec($curl);
      echo $out;
      curl_close($curl);
   }
Должно работать?  !
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Нужна помощь в написании плагина
« Ответ #12 : 05.10.2016, 14:40:39 »
Должно работать?  !
В логике промхнулся.  if ($isNew) надо не на данные пользователя, а на отправку
« Последнее редактирование: 05.10.2016, 14:58:41 от Septdir »
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

makslm

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Нужна помощь в написании плагина
« Ответ #13 : 06.10.2016, 09:56:08 »
Вроди как разобрался с этим, установил плагин...
....
if ($isNew) {
         $file = file_get_contents('site.ru');
   }
При получении данных с site.ru, на site.ru я это увижу..

Не работает( Его нужно дополнительно подключать в регистрации?
Если да, можно пример пожалуйста?
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Нужна помощь в написании плагина
« Ответ #14 : 06.10.2016, 10:45:15 »
Вроди как разобрался с этим, установил плагин...
....
if ($isNew) {
         $file = file_get_contents('site.ru');
   }
При получении данных с site.ru, на site.ru я это увижу..

Не работает( Его нужно дополнительно подключать в регистрации?
Если да, можно пример пожалуйста?

Поймите если вы хотите чтобы вам помогли с апи то нужна ссылка на документацию этого апи. А лучше всего в коммерческий раздел
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

makslm

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Нужна помощь в написании плагина
« Ответ #15 : 06.10.2016, 10:50:47 »
вопрос с апи сейчас не актуален
 $file = file_get_contents('site.ru'); работает, проверял отдельно созданным файлом..

код плагина упростил.. что б сразу отправка была при if new

я должен сам научится и понять)
*

makslm

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Нужна помощь в написании плагина
« Ответ #16 : 06.10.2016, 15:48:06 »
 ! HELP даже так не работает(
Цитировать
<?
class plgUserNewlead extends JPlugin {
function onUserAfterSave ($user, $isnew)
   {
         
      if ($isnew)
         {
      $fp = fopen("11.txt", "a");

fwrite($fp, "123123123123213"."\r\n");

fclose($fp);
         }
   }

Для теста создал файл 1.php
<?php
$fp = fopen("11.txt", "a");
fwrite($fp, "123123123123213"."\r\n");
fclose($fp);
?>
- работает, записало цифры в файл
}
« Последнее редактирование: 06.10.2016, 15:56:43 от makslm »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод отладочной информации системного плагина

Автор effrit

Ответов: 23
Просмотров: 1654
Последний ответ 02.10.2018, 10:24:46
от effrit
Объясните как работает MVC Override с помощью плагина Joomla!

Автор kens1n

Ответов: 8
Просмотров: 2117
Последний ответ 09.10.2016, 11:00:25
от robert
Нужна помощь по PHP

Автор pahtab

Ответов: 2
Просмотров: 1409
Последний ответ 26.03.2016, 08:12:43
от b2z
Продолжая тему разработки контент плагина, сорянчик))

Автор IvanTopor

Ответов: 7
Просмотров: 1214
Последний ответ 26.02.2016, 16:27:18
от b2z
[Решено] Создание контент плагина

Автор IvanTopor

Ответов: 4
Просмотров: 1783
Последний ответ 26.02.2016, 13:10:37
от IvanTopor