使用 webhook 获取 Facebook 线索广告的表单名称
Get the form name of Facebook lead ads using webhook
我有两个不同的 Facebook 线索广告活动(A 和 B)连接到同一个 F.B 页面,我已经使用 Facebook 广告 [=31] 将它连接到一个 webhook guide =] sdk,并将潜在客户传递给我的 C.R.M,一切正常,问题是 我无法判断潜在客户是来自表格 A 还是来自表格 B。
我试过像这样提取发件人名称:
$input = json_decode(file_get_contents('php://input'), true);
if($input)
{
$form_id = $input['entry'][0]['changes'][0]['value']['form_id'];
$form = AdsWebhookHandler::getFormName($form_id);
}
来自AdsWebhookHandler
class:
public static function getFormName($form_id)
{
$form = new LeadgenForm($form_id);
if(!$form) return $form_id;
return $form->read();
}
但出于某种原因,表格总是 returns 为空 ({}
)。
有谁知道我怎样才能提取表格名称?甚至更好 - 是否可以在表单中传递自定义隐藏字段?
谢谢大家的回答:)
O.K 所以我弄清楚了如何获取表单名称,我需要做的就是使用 Facebook PHP SDK 中包含的 getData()
函数,我的代码看起来像现在:
public function getFormName($form_id)
{
$form = new LeadgenForm($form_id,null,$this->fb_instance);
if(!$form) return $form_id;
$data = $form->read()->getData();
return isset($data['name']) ? $data['name'] : $form_id;
}
希望它能对以后的人有所帮助:)
我有两个不同的 Facebook 线索广告活动(A 和 B)连接到同一个 F.B 页面,我已经使用 Facebook 广告 [=31] 将它连接到一个 webhook guide =] sdk,并将潜在客户传递给我的 C.R.M,一切正常,问题是 我无法判断潜在客户是来自表格 A 还是来自表格 B。
我试过像这样提取发件人名称:
$input = json_decode(file_get_contents('php://input'), true);
if($input)
{
$form_id = $input['entry'][0]['changes'][0]['value']['form_id'];
$form = AdsWebhookHandler::getFormName($form_id);
}
来自AdsWebhookHandler
class:
public static function getFormName($form_id)
{
$form = new LeadgenForm($form_id);
if(!$form) return $form_id;
return $form->read();
}
但出于某种原因,表格总是 returns 为空 ({}
)。
有谁知道我怎样才能提取表格名称?甚至更好 - 是否可以在表单中传递自定义隐藏字段?
谢谢大家的回答:)
O.K 所以我弄清楚了如何获取表单名称,我需要做的就是使用 Facebook PHP SDK 中包含的 getData()
函数,我的代码看起来像现在:
public function getFormName($form_id)
{
$form = new LeadgenForm($form_id,null,$this->fb_instance);
if(!$form) return $form_id;
$data = $form->read()->getData();
return isset($data['name']) ? $data['name'] : $form_id;
}
希望它能对以后的人有所帮助:)