2015-07-20 121 views
3

有谁知道如何获取使用Facebook广告API的PHP SDK网页所有Facebook广告统计和显示。我正在使用此API,并获取广告系列详细信息,如广告系列,ID,状态的名称。但无法获得展示次数,点击次数和花费。显示Facebook广告统计网页上使用Facebook的广告API PHP

我在做什么,让我与大家分享: 1)我被授权用户 2)获得访问令牌后得到access token,我使用下面的代码

$account = new AdAccount('act_XXXXXXXXXXXXXXX'); 
$account->read(); 

$fields = array(
    AdCampaignFields::ID, 
    AdCampaignFields::NAME, 
    AdCampaignFields::OBJECTIVE, 
); 
$params = array(AdCampaignFields::STATUS => array(AdCampaign::STATUS_ACTIVE,AdCampaign::STATUS_PAUSED,),); 
$campaigns = $account->getAdCampaigns($fields, $params); 

/* Added By Jigar */  
$campaign = new AdCampaign('XXXXXXXXXXXXXXXX'); 
$compainDetails = $campaign->read($fields); 

3)然后打印数组

echo "<pre>"; 
print_r($compainDetails); 
exit; 

如果有人知道上述代码中的任何建议,请分享。所有的代码都在PHP中。剂量任何人有获取上述所有需要的数据的任何教程,然后分享它

+0

有谁知道如何获取数据使用Facebook广告API? –

+0

您的应用是否可以访问此广告帐户?您可能需要从“应用程序设置”页面指定它 – amudi

回答

1

你可以尝试使用Facebook的API的见解,而不是$活动层级>阅读。这里有一个例子:

https://developers.facebook.com/docs/marketing-api/insights/v2.5#create-async-jobs

你必须怎么做才能得到曝光,点击,花是添加这些字段的字段$ PARAM。在你的情况下,完整的代码应该如下所示:

 

    use FacebookAds\Object\Campaign; 
    use FacebookAds\Object\Values\InsightsLevels; 
    use FacebookAds\Object\Values\InsightsFields; 

    $campaign = new Campaign(); 

    $fields = array(
     InsightsFields::IMPRESSIONS, 
     InsightsFields::UNIQUE_CLICKS, 
     InsightsFields::CALL_TO_ACTION_CLICKS, 
     InsightsFields::INLINE_LINK_CLICKS, 
     InsightsFields::SOCIAL_CLICKS, 
     InsightsFields::UNIQUE_SOCIAL_CLICKS, 
     InsightsFields::SPEND, 
    ); 

    $params = array(
     'level' => InsightsLevels::CAMPAIGN, 
    ); 

    $async_job = $campaign->getInsightsAsync($fields, $params); 

    $async_job->read(); 

我不知道究竟是什么“单击”参数指给你,但如果你在所有这些点击PARAMS看看,我我确定你会找到它,否则你就会知道如何计算它。 有关洞察对象上可用字段的完整列表,请参阅:https://github.com/facebook/facebook-php-ads-sdk/blob/master/src/FacebookAds/Object/Fields/InsightsFields.php

希望有所帮助。

此致,本杰明