/**
  * AdsPixels can be created but only one per account can exist
  */
 public function testCreate()
 {
     $pixel = new AdsPixel(null, $this->getActId());
     $has_thrown = false;
     try {
         $pixel->create();
     } catch (\Exception $e) {
         $has_thrown = true;
     }
     $this->assertTrue($has_thrown);
 }
Exemplo n.º 2
0
 /**
  * @param array $fields
  * @param array $params
  * @return Cursor
  */
 public function getAdsPixels(array $fields = array(), array $params = array())
 {
     return $this->getManyByConnection(AdsPixel::className(), $fields, $params);
 }
Exemplo n.º 3
0
 public function createAdsPixel(array $fields = array(), array $params = array(), $pending = false)
 {
     $this->assureId();
     $param_types = array('name' => 'string');
     $enums = array();
     $request = new ApiRequest($this->api, $this->data['id'], RequestInterface::METHOD_POST, '/adspixels', new AdsPixel(), 'EDGE', AdsPixel::getFieldsEnum()->getValues(), new TypeChecker($param_types, $enums));
     $request->addParams($params);
     $request->addFields($fields);
     return $pending ? $request : $request->execute();
 }
$user_id_1 = 1234;
$user_id_2 = 12345;
// _DOC open [CUSTOM_AUDIENCE_USERS_ADD_ID]
// _DOC vars [custom_audience_id:s, application_id, user_id_1, user_id_2]
// use FacebookAds\Object\CustomAudience;
// use FacebookAds\Object\Fields\CustomAudienceFields;
// use FacebookAds\Object\Values\CustomAudienceTypes;
// Add Facebook IDs of users of certain applications
$audience = new CustomAudience($custom_audience_id);
$audience->addUsers(array($user_id_1, $user_id_2), CustomAudienceTypes::ID, array($application_id));
// _DOC close [CUSTOM_AUDIENCE_USERS_ADD_ID]
$audience->delete();
$account = new AdAccount($ad_account_id);
$pixels = $account->getAdsPixels(array(AdsPixelsFields::CODE));
if (!$pixels->count()) {
    $pixel = new AdsPixel(null, $ad_account_id);
    $pixel->{AdsPixelsFields::NAME} = 'My WCA Pixel';
    $pixel->create();
} else {
    $pixel = $pixels->current();
}
$pixel_id = $pixel->{AdsPixelsFields::ID};
// _DOC open [CUSTOM_AUDIENCE_CREATE_WCA]
// _DOC vars [ad_account_id:s, pixel_id]
// use FacebookAds\Object\CustomAudience;
// use FacebookAds\Object\Fields\CustomAudienceFields;
// use FacebookAds\Object\Values\CustomAudienceSubtypes;
$custom_audience = new CustomAudience(null, $ad_account_id);
$custom_audience->setData(array(CustomAudienceFields::PIXEL_ID => $pixel_id, CustomAudienceFields::NAME => 'My New Website Custom Audience', CustomAudienceFields::SUBTYPE => CustomAudienceSubtypes::WEBSITE, CustomAudienceFields::RETENTION_DAYS => 15, CustomAudienceFields::RULE => array('url' => array('i_contains' => 'shoes')), CustomAudienceFields::PREFILL => true));
$custom_audience->create();
// _DOC close [CUSTOM_AUDIENCE_CREATE_WCA]
Exemplo n.º 5
0
// _DOC open [ADSPIXEL_GET_ADACCOUNTS]
// _DOC vars [business_id:s, pixel_id, account_id:s]
// use FacebookAds\Object\AdsPixel;
// use FacebookAds\Object\Fields\AdsPixelsFields;
$pixel = new AdsPixel($pixel_id, $ad_account_id);
$shared_accounts = $pixel->getAdAccounts(array(), array('business' => $business_id));
foreach ($shared_accounts as $shared_account) {
    echo $shared_account->{AdAccountFields::ID} . PHP_EOL;
}
// _DOC close [ADSPIXEL_GET_ADACCOUNTS]
$destination_business_id = $config->secondaryBusinessId;
// _DOC open [ADSPIXEL_SHARE_BUSINESS]
// _DOC vars [business_id:s, destination_business_id:s, pixel_id, account_id:s]
// use FacebookAds\Object\AdsPixel;
// use FacebookAds\Object\Fields\AdsPixelsFields;
$pixel = new AdsPixel($pixel_id, $ad_account_id);
$pixel->read();
$pixel->sharePixelWithAgency($business_id, $destination_business_id);
// _DOC close [ADSPIXEL_SHARE_BUSINESS]
// _DOC open [ADSPIXEL_GET_BUSINNES]
// _DOC vars [pixel_id, account_id:s]
// use FacebookAds\Object\AdsPixel;
// use FacebookAds\Object\Fields\BusinessFields;
$pixel = new AdsPixel($pixel_id, $ad_account_id);
$shared_business = $pixel->getAgencies();
foreach ($shared_business as $business) {
    echo $business->{BusinessFields::ID} . PHP_EOL;
}
// _DOC close [ADSPIXEL_GET_BUSINNES]
$pixel->unsharePixelWithAdAccount($business_id, $destination_account_id);
$pixel->unsharePixelWithAgency($business_id, $destination_business_id);