2015-11-24 37 views
1

我使用Facebook Marketing Api創建廣告和自定義受衆羣體。我怎麼都找不到一種方法將創建的自定義受衆羣體鏈接到AdSense。 以下是github中的示例。目前,我只能創建包含興趣和地理位置的Adsets。將自定義受衆羣體鏈接到Adset

如以下示例所示,我們只能根據興趣和地理位置進行定位。

$results = TargetingSearch::search(
    $type = TargetingSearchTypes::INTEREST, 
    $class = null, 
    $query = 'facebook'); 
// we'll take the top result for now 
$target = (count($results)) ? $results->current() : null; 
echo "Using target: ".$target->name."\n"; 
$targeting = new TargetingSpecs(); 
$targeting->{TargetingSpecsFields::GEO_LOCATIONS} 
    = array('countries' => array('GB')); 
$targeting->{TargetingSpecsFields::INTERESTS} = array(
    array(
     'id' => $target->id, 
     'name' => $target->name, 
    ), 
); 


$adset = new AdSet(null, $account->id); 
$adset->setData(array(
    AdSetFields::NAME => 'My First AdSet', 
    AdSetFields::CAMPAIGN_ID => $campaign->id, 
    AdSetFields::STATUS => AdSet::STATUS_ACTIVE, 
    AdSetFields::DAILY_BUDGET => '150', 
    AdSetFields::TARGETING => $targeting, 
    AdSetFields::OPTIMIZATION_GOAL => OptimizationGoals::REACH, 
    AdSetFields::BILLING_EVENT => BillingEvents::IMPRESSIONS, 
    AdSetFields::BID_AMOUNT => 2, 
    AdSetFields::START_TIME => 
    (new \DateTime("+1 week"))->format(\DateTime::ISO8601), 
    AdSetFields::END_TIME => 
    (new \DateTime("+2 week"))->format(\DateTime::ISO8601), 
)); 
$adset->validate()->create(); 
echo 'AdSet ID: '. $adset->id . "\n"; 

我的要求是一個自定義的觀衆直接鏈接到Adset,例如 AdSetFields :: CUSTOMAUDIENCE => $ audienceid

這是ATLEAST可能嗎?如果不能如何將我們創建的自定義受衆與Adset關聯起來?

回答

1

您可以使用字段custom_audiences,該字段接受一組要定位的自定義受衆羣體。我不知道,如果實際需要的名字也,但它在所有的例子:

$targeting->{TargetingSpecsFields::CUSTOM_AUDIENCES} = array(
    array(
    'id' => <AUDIENCE_ID>, 
    'name' => <AUDIENCE_NAME>, 
), 
); 

targeting doc並搜索「瞄準定製觀衆&合作伙伴類別」

+1

感謝保羅,這是什麼我一直在尋找。一些我在定位規範文檔中錯過了這一部分。 – Chamindar2002

+0

請您也可以分享一個java的例子, 我發現遍佈Facebook文檔,但沒有找到。 –

相關問題