0

我将 Magento 用于客户的商店,他们有一个他们使用的 CRM (Hubspot)。他们的要求是,当客户通过他们的一站式结账页面进行购买时,输入的联系信息也会发送到他们的 CRM。

表单动作和诸如此类的东西不是我想要的。相反,我希望有人可以概述我将如何获取他们在结账时输入的信息。我是否需要有一个成功页面并将代码添加到该成功页面?

谢谢!

4

2 回答 2

0

您可以使用该app/design/frontend/base/default/template/checkout/success.phtml页面。首先,将其复制到您自己的包和主题中。然后你可以使用这样的东西:

$customerId = Mage::getSingleton('customer/session')->getCustomerId();
$customerData = Mage::getModel('customer/customer')->load($customerId)->getData();
var_dump($customerData);

你应该能够从那里提取你需要的东西。

嗯!

于 2013-02-27T16:36:47.197 回答
0

假设您正在使用他们的 REST Api @ http://developers.hubspot.com/docs/methods/contacts/create_contact

您可以将您的 api 帖子添加到app/design/frontend/base/default/template/checkout/success.phtml(只会将信息发送到从前端而不是从管理员下订单的客户的 crm)

你也可以创建一个观察者

在 config.xml

    <events>
        <sales_order_place_after>
            <observers>
                <hubspot_create_customer_api>
                    <type>singleton</type>
                    <class>hubspotApi/observer</class>
                    <method>createCustomer</method>
                </hubspot_create_customer_api>
            </observers>
        </sales_order_place_after>

在你的observer.php

class MageIgniter_HubspotApi_Model_Observer 
{

    public function createCustomer($event)
    {
        //$_order = $event->getOrder();
        //$_order->getCustomerFirstname();
        print_r($_order->getBillingAddress()); //get customer billing info
        print_r($_order->getBillingAddress()->getFirstname()); 

       //make curl call to post info to api
       //see http://mydons.com/using-curl-functions-in-magento-way/

    }
}

学习如何使用观察者创建自定义模块

于 2013-02-27T17:52:40.407 回答