[英]Get the form name of Facebook lead ads using webhook
我有两个不同的 Facebook 线索广告活动(A 和 B)连接到同一个 FB 页面,我已经按照本指南使用 Facebook 广告 PHP sdk 将它连接到 webhook,并将线索传递到我的 CRM,一切正常,问题是我无法判断潜在客户是来自表格 A 还是表格 B。
我试图像这样提取 from 名称:
$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
类:
public static function getFormName($form_id)
{
$form = new LeadgenForm($form_id);
if(!$form) return $form_id;
return $form->read();
}
但出于某种原因,表单总是返回空 ( {}
)。 有谁知道我怎样才能提取表格名称? 甚至更好 - 是否可以在表单中传递自定义隐藏字段?
谢谢大家的回答:)
好的,所以我弄清楚了如何获取表单名称,我需要做的就是使用 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)连接到同一个 FB 页面,我已经按照本指南使用 Facebook 广告 PHP sdk 将其连接到网络钩子,并将线索传递给我的 CRM,一切正常,问题是我无法判断潜在客户是来自表格 A 还是表格 B 。
我试过像这样提取 from 名称:
$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
类:
public static function getFormName($form_id)
{
$form = new LeadgenForm($form_id);
if(!$form) return $form_id;
return $form->read();
}
但由于某种原因,表单总是返回空 ( {}
)。 有人知道如何提取表单名称吗? 甚至更好 - 是否可以在表单中传递自定义隐藏字段?
谢谢大家的回答:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.