PHPFixing
  • Privacy Policy
  • TOS
  • Ask Question
  • Contact Us
  • Home
  • PHP
  • Programming
  • SQL Injection
  • Web3.0

Sunday, February 6, 2022

[FIXED] Get facebook ad content with Facebook PHP SDK

 February 06, 2022     ads, facebook-php-sdk, php     No comments   

Issue

I'm trying to get the content of a facebook ad. Or to be more exact: A link which is part of the ad. I can extract the link from the content, but can't seem to get the content in the first place.

After initializing the connection I get the current ad account:

$me = new AdUser('me');

/** @var AdAccount $account */
$account = $me->getAdAccounts()->current();

I tried with campaigns, ads and creatives, but none of them seam to contain the actual html content of the add.

$campaigns = $account->getCampaigns([
    CampaignFields::ID,
    CampaignFields::NAME
]);

$ads = $account->getAds([
    AdFields::ID,
    AdFields::NAME
]);

$creatives = $account->getAdCreatives([
    AdCreativeFields::NAME,
    AdCreativeFields::BODY
]);

As far as I know, there are no matching fields in campaigns and ads. I looked through all fields returned by $object->getData().


Solution

You should request a correct fieldset with required fields:

$creatives = $account->getAdCreatives([
    AdCreativeFields::NAME,
    AdCreativeFields::BODY,
    AdCreativeFields::LINK_DEEP_LINK_URL,
    AdCreativeFields::LINK_URL,
]);

The currect complete list of fieds is:

class AdCreativeFields extends AbstractEnum {
  const ACTOR_ID = 'actor_id';
  const ACTOR_IMAGE_HASH = 'actor_image_hash';
  const ACTOR_NAME = 'actor_name';
  const ADLABELS = 'adlabels';
  const APPLINK_TREATMENT = 'applink_treatment';
  const BODY = 'body';
  const CALL_TO_ACTION_TYPE = 'call_to_action_type';
  const DYNAMIC_AD_VOICE = 'dynamic_ad_voice';
  const FOLLOW_REDIRECT = 'follow_redirect';
  const ID = 'id';
  const IMAGE_HASH = 'image_hash';
  const IMAGE_FILE = 'image_file';
  const IMAGE_URL = 'image_url';
  const IMAGE_CROPS = 'image_crops';
  const INSTAGRAM_ACTOR_ID = 'instagram_actor_id';
  const INSTAGRAM_PERMALINK_URL = 'instagram_permalink_url';
  const LINK_DEEP_LINK_URL = 'link_deep_link_url';
  const LINK_URL = 'link_url';
  const NAME = 'name';
  const OBJECT_ID = 'object_id';
  const OBJECT_STORY_ID = 'object_story_id';
  const OBJECT_STORY_SPEC = 'object_story_spec';
  const OBJECT_STORE_URL = 'object_store_url';
  const OBJECT_TYPE = 'object_type';
  const OBJECT_URL = 'object_url';
  const PLACE_PAGE_SET_ID = 'place_page_set_id';
  const PREVIEW_URL = 'preview_url';
  const PRODUCT_SET_ID = 'product_set_id';
  const RUN_STATUS = 'run_status';
  const TEMPLATE_URL = 'template_url';
  const THUMBNAIL_URL = 'thumbnail_url';
  const TITLE = 'title';
  const URL_TAGS = 'url_tags';
  const VIDEO_ID = 'video_id';
}


Answered By - Gennadiy Litvinyuk
  • Share This:  
  •  Facebook
  •  Twitter
  •  Stumble
  •  Digg
Newer Post Older Post Home

0 Comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Total Pageviews

Featured Post

Why Learn PHP Programming

Why Learn PHP Programming A widely-used open source scripting language PHP is one of the most popular programming languages in the world. It...

Subscribe To

Posts
Atom
Posts
Comments
Atom
Comments

Copyright © PHPFixing