繁体   English   中英

Fb Ads api如何仅获得FB活动?

[英]Fb Ads api How to get Active only FB Campaigns?

我正在尝试从Facebook广告api获取广告系列列表我正在使用下面的代码

        $account = new AdAccount('act_' . $account_id);
        $campaignSets = $account->getCampaigns(array(
            CampaignFields::ID,
            CampaignFields::NAME,
            CampaignFields::START_TIME,
            CampaignFields::STOP_TIME,
            CampaignFields::SPEND_CAP,
            'effective_status'
                ));

但我只需要有效的广告系列列表,因此我如何通过Camapign Status = Active过滤列表

谢谢,Ronak Shah

如果您检查AdAccount->getCampaigns的方法声明,您将看到它接受两个参数$fields$params 要检索的字段的$fields ,以及$params作为过滤器。 您的案例示例(使用v2.5测试): -

$account = new AdAccount('act_' . $account_id);

$fields = array(
    CampaignFields::ID,
    CampaignFields::NAME,
    CampaignFields::START_TIME,
    CampaignFields::STOP_TIME,
    CampaignFields::SPEND_CAP,
    'effective_status'
);

$params = array(
    'effective_status' => array(
        Campaign::STATUS_ACTIVE
    ),
);

$campaignSets = $account->getCampaigns($fields, $params);

希望这可以帮助! :)

我可以向您展示如何使用原始REST-API实现此目的(我选择不使用FB的不必要的复杂SDK(Python))。

https://graph.facebook.com/v2.11/act_99999999999999/campaigns?status= [ “ACTIVE”,“PAUSED”,“ARCHIVED”,“PENDING_REVIEW”,“DISAPPROVED”,“PREAPPROVED”,“PENDING_BILLING_INFO”,“ CAMPAIGN_PAUSED“,”ARCHIVED“,”ADSET_PAUSED“]&format = json&method = get&pretty = 1&limit = 250&fields = field1,field2&time_range = {”since“:”2017-11-01“,”until“:”2017-12-05“} &的access_token = XXX

这里的关键是status=[] GET参数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM