Интеграция Salesforce Lead Tracking с контактными формами в Wordpress - PullRequest
1 голос
/ 08 октября 2010

Я также поднимал этот вопрос на WP Ответах . Но так как он также использует Salesforce, я не был уверен, получу ли я там ответ.

Я использую контактную форму 7 на своем веб-сайте и хотел бы интегрировать с ней отслеживание потенциальных клиентов Salesforce.

Мне удалось добавить скрытое поле с моим oid, как предлагалось на этом сайте

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

Кто-нибудь смог интегрировать систему отслеживания потенциальных клиентов с плагинами Wordpress Contact Form?

Я также пытался использовать cform с инструкциями , приведенными здесь . Но это дает предупреждение, что fopen не удалось. Я полагаю, это потому, что fopen не разрешает операции записи с обертками HTTP. Не уверен, как автору удалось заставить это работать!

Буду признателен за любую помощь в этом! Я не хочу использовать форму Web-to-lead Salesforce. Спасибо.

Ответы [ 5 ]

1 голос
/ 18 августа 2011

Из моего исследования по интеграции salesforce с cforms основной принцип заключается в том, что вам нужно, чтобы информация POST точно соответствовала информации cform POST.

При написании поста, который вам понравился, я исследовал процесс, используя примерную форму из них - предоставленный встроенный код - затем нашел способ заставить cforms представить данные, отформатировав их так, как они указали * 1004 URL они имели в своей форме.

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

0 голосов
/ 20 октября 2016

Это то, что сработало для меня, просто не забудьте заменить «Контактную форму 1» на имя формы, для которой вы хотите выполнить действие, и указать свой бизнес-идентификатор Salesforce вместо первого примера.

add_action( 'wpcf7_before_send_mail', 'my_conversion' );
function my_conversion( $contact_form ) {
$title      = $contact_form->title;
$submission = WPCF7_Submission::get_instance();

if ( $submission ) {
    $posted_data = $submission->get_posted_data();
}

if ( 'Contact form 1' == $title ) {

    $email = $posted_data["your-email"];
    $name  = $posted_data["first-name"];
    $last  = $posted_data["last-name"];
    $phone  = $posted_data["tel"];
    $company  = $posted_data["company-name"];
    $company_size = $posted_data["menu-870"];


    $post_items[] = 'oid=00vF80000003zx6';
    $post_items[] = 'first_name=' . $name;
    $post_items[] = 'last_name=' . $last;
    $post_items[] = 'email=' . $email;
    $post_items[] = 'phone=' . $phone;
    $post_items[] = 'company=' . $company;
    $post_items[] = '00df800000BypGb=' . $company_size;

    $post_string = implode( '&', $post_items );

    $ch = curl_init( 'https://www.salesforce.com/servlet/servlet.WebToLead?encoding=UTF-8' );
    curl_setopt( $ch, CURLOPT_POSTFIELDS, $post_string );
    curl_setopt( $ch, CURLOPT_POST, 1 );
    curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, 1 );
    curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
    curl_exec( $ch ); // Post to Salesforce
    curl_close( $ch ); // close cURL resource
}
}
0 голосов
/ 20 сентября 2014

Я часами искал решение, но ничего не получалось, я пробовал все рекомендуемые решения, например. http://daddyanalytics.com/integrating-contact-form-7-and-salesforce/ и http://www.alexhager.at/how-to-integrate-salesforce-in-contact-form-7/ Я решил проблему:)

Я также попробовал плагин https://wordpress.org/plugins/forms-3rdparty-integration/

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

Затем я ввел два последних параметра, т.е.

add_action('wpcf7_before_send_mail', 'my_conversion', 10, 1); //this will call the hook

add_action('wpcf7_before_send_mail', 'my_conversion'); //not calling the hook for me

add_action('wpcf7_before_send_mail', 'my_conversion', 10); //also not calling the hook for me

Пожалуйста, понравится, если это решит вашу проблему.

Итак, вот полное решение:

add_action('wpcf7_before_send_mail', 'my_conversion', 10, 1);

function my_conversion($cf7) {
    $email = $cf7->posted_data["email"];
    $name = $cf7->posted_data["name"];
    $phone = $cf7->posted_data["phone"];
    $business_type = $cf7->posted_data["business-type"];
    $no_stations = $cf7->posted_data["number-of-stations"];
    $lead_source = $cf7->title;

    $post_items[] = 'oid=<YOUR-SALES-FORCE-ID>';
    $post_items[] = 'name=' . $name;
    $post_items[] = 'email=' . $email;
    $post_items[] = 'phone=' . $phone;
    $post_items[] = 'business_type=' . $business_type;
    $post_items[] = 'no_of_stations=' . $no_stations;
    $post_items[] = 'lead_source=' . $lead_source;
    if (!empty($name) && !empty($phone) && !empty($email)) {
        $post_string = implode('&', $post_items);
// Create a new cURL resource
        $ch = curl_init();

        if (curl_error($ch) != "") {
// error handling
        }

        $con_url = 'https://www.salesforce.com/servlet/servlet.WebToLead?encoding=UTF-8';
        curl_setopt($ch, CURLOPT_URL, $con_url);
// Set the method to POST
        curl_setopt($ch, CURLOPT_POST, 1);
// Pass POST data
        curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);
        curl_exec($ch); // Post to Salesforce
        curl_close($ch); // close cURL resource
    }
}
0 голосов
/ 19 декабря 2013

Это специальное требование для настраиваемой формы контакта было решено с помощью плагина cookie, модифицированного вызовами PHP и JS, для обеспечения правильных решений. Использование пользовательской формы вместо контактной формы 7. Использование пользовательской формы и интерфейса CSS 3, безусловно, исправлено правильно. Вы можете скачать наш плагин Wordpress с открытым исходным кодом здесь.

http://basisinteractive.net/opensource/BETTER_ECOM_CRM_FORMS_AND_LINKING_2ND%20DRAFT.zip

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

Его открытый исходный код и полностью настраиваемый.

0 голосов
/ 28 августа 2013

Вы пробовали следовать инструкциям в этом посте? Он предоставляет код php, необходимый в вашем файле functions.php для интеграции контактной формы 7 с Salesforce:

http://daddyanalytics.com/integrating-contact-form-7-and-salesforce/

...