Отображение статистики рекламы Facebook на веб-странице с помощью API рекламы Facebook в переполнении стека

Кто-нибудь знает, как получить всю статистику рекламы в Facebook и показывать на веб-странице, используя Facebook Ads Api-PHP SDK. Я использую этот API и получаю информацию о кампании, такую ​​как название кампании, идентификатор, статус. но не в состоянии получать показы, клики, потрачено.

Что я делаю, позвольте мне поделиться с вами:
1) я получаю access token авторизуя пользователя
2) После получения токена доступа я использую код ниже

$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. У кого-нибудь есть учебник, который извлекает все необходимые данные, а затем делится ими

3

Решение

Вы можете попробовать использовать api facebook insights вместо $ campaign-> read. Вот пример:

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

Чтобы получить показы, кликать и тратить, нужно добавить эти поля в параметр $ fields. В вашем случае полный код должен выглядеть следующим образом:


использовать FacebookAds \ Object \ Campaign;
использовать FacebookAds \ Object \ Values ​​\ InsightsLevels;
использовать FacebookAds \ Object \ Values ​​\ InsightsFields;

$ campaign = new Campaign ();

$ fields = array (
InsightsFields :: ВПЕЧАТЛЕНИЕ,
InsightsFields :: UNIQUE_CLICKS,
InsightsFields :: CALL_TO_ACTION_CLICKS,
InsightsFields :: INLINE_LINK_CLICKS,
InsightsFields :: SOCIAL_CLICKS,
InsightsFields :: UNIQUE_SOCIAL_CLICKS,
InsightsFields :: ПРОВЕСТИ,
);

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

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

$ Async_job-> прочитать ();

Я не знаю, что именно для вас означает параметр «click», но если вы посмотрите на все эти параметры click, я уверен, что вы найдете его или узнаете, как его рассчитать.
Для получения полного списка полей, доступных на объектах Insights, взгляните на: https://github.com/facebook/facebook-php-ads-sdk/blob/master/src/FacebookAds/Object/Fields/InsightsFields.php

Надеюсь, это поможет.

С уважением, Бенджамин

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]