2016-10-25 1 views
1

Je reçois une erreur en essayant de créer une publicité sur Facebook via l'API PHP.API des Annonces Facebook - ID du Parent Requis

Exception in AbstractCrudObject.php line 113: A parent ID is required. 

La chose est, je copiais le code de https://developers.facebook.com/docs/marketing-api/guides/lead-ads/create/v2.8 et juste modifié pour correspondre à ce que j'ai besoin. Je suis confus quant à ce qui manque, puisque je ne peux pas trouver quelque chose à ce sujet à travers la documentation. Quelqu'un d'autre a le même problème ou trouve-t-il comment le réparer?

Voici mon code:

$link_data = new AdCreativeLinkData(); 
$link_data->setData([ 
    AdCreativeLinkDataFields::LINK => $creativeInfo->link, 
    AdCreativeLinkDataFields::MESSAGE => $creativeInfo->message, 
    AdCreativeLinkDataFields::IMAGE_HASH => $image->{AdImageFields::HASH}.PHP_EOL, 
    AdCreativeLinkDataFields::CAPTION => $creativeInfo->caption, 
    AdCreativeLinkDataFields::DESCRIPTION => $creativeInfo->description, 
    AdCreativeLinkDataFields::CALL_TO_ACTION => [ 
     'type' => $creativeInfo->cta, 
     'value' => [ 
      'lead_gen_form_id' => $creativeInfo->leadform, 
     ], 
    ], 
]); 

$story = new AdCreativeObjectStorySpec(); 
$story->setData([ 
    AdCreativeObjectStorySpecFields::PAGE_ID => $creativeInfo->page_id, 
    AdCreativeObjectStorySpecFields::LINK_DATA => $link_data, 
]); 

$creative = new AdCreative(); 
$creative->setData([ 
    AdCreativeFields::OBJECT_STORY_SPEC => $story, 
]); 
$creative->create(); 

Répondre

-1

Lorsque vous instanciez un objet AdCreative vous devez fournir le compte publicitaire ID Creative est, comme ceci:

$creative = new AdCreative(null, 'act_<AD_ACCOUNT_ID>'); //i.e. act_12424141412