2011-10-27 1 views
2

J'essaie de mettre à jour le groupe d'annonces avec une demande par lot. Tout se passe bien si ne pas ajouter image_file param mais quand l'ajouter retourne une erreur.Mise à jour de l'image créative en lot avec ADS Api?

Mes ad_specs;

Tableau ( [procédé] => poster [relative_url] => 6003452316521 name = ReklamGrubu915 & MAX_BID = 50 & BID_TYPE = 1 & ciblage = { "genre": [ "1", "2"] , "age_min": "30", "age_max": "40", "pays": ["TR"], "mots-clés": ["# Nike, Inc."], "cities": [{"name" : "Istanbul"}, {"name": "Ankara"}, {"name": "Izmir"}]} & creative = {"title": "Ev Yemekleri", "corps": "Evde harika lezzetler!" , "link_url": "http://www.xxxxx.com/dealer.php?kat=334", "image_file": "img17.jpg"} )

Et aussi ajouter l'image à batch_params

$ batch_params [ 'img17.jpg'] = '/var/www/images/img17.jpg'

je l'envoie, mais son retour cette erreur;

Erreur 1.487.242 - Image Resize Failed - la fonction getimagesize retourne faux

Si je supprime image_file chaque mise à jour est param va bien si la demande de lot vrai. Le fichier image existe dans le bon répertoire. j'essaie de changer les paramètres image_file en 'attached_files'. Ensuite, il n'y a pas d'erreurs en regardant tout s'est bien passé, le retour des données est vrai, mais je vois les annonces facebook gérer la page il n'y a pas de changement d'image?

Des idées? Mai son un bug s'il vous plaît aider? J'utilise PHP SDK.

+0

vous pourrez peut-être essayer de l'étiquette d'objet en html puis définissez la taille de l'image en utilisant height = "200px" width = "200px" changer 200 en conséquence i.e.

Répondre

0

Lorsque vous spécifiez le nom de fichier de l'image dans votre création, vous devez ajouter le fichier image en tant que MIME POST en plusieurs parties. Vous êtes en train de donner le chemin de l'image. ($ batch_params ['img17.jpg'] = '/var/www/images/img17.jpg'). Effectivement, vous devez télécharger l'image sur facebook avec demande. Vous pouvez également créer une image dans la bibliothèque à l'aide de Api Image Api, puis utiliser image_hash dans la création.

$image = new AdImage(null, 'act_<ACCOUNT_ID>'); 
$image->{AdImageFields::FILENAME} = '<IMAGE_PATH>'; 

$image->create(); 
echo 'Image Hash: '.$image->{AdImageFields::HASH}.PHP_EOL; 

puis

$creative = new AdCreative(null, 'act_<ACCOUNT_ID>'); 
$creative->setData(array(
    AdCreativeFields::TITLE => 'My Test Creative', 
    AdCreativeFields::BODY => 'My Test Ad Creative Body', 
    AdCreativeFields::OBJECT_URL => 'https://www.facebook.com/facebook', 
    AdCreativeFields::IMAGE_HASH => '<IMAGE_HASH>', 
)); 
Questions connexes