2017-05-27 48 views
1

我們需要更新我們所有廣告的finalUrls。我們有幾百ImageAdResponsiveDisplayAd s,我們不想丟失現有配置和/或圖像。由於谷歌不允許我們更新AdGroupAd的任何財產,我們將不得不使用ADD運營商克隆它們。如何克隆ImageAd和ResponsiveDisplayAd

雖然這樣做,我們得到幾個錯誤,所有這些都與ad.image有關。什麼是這些更新的正確/最佳途徑?

[AdError.IMAGE_ERROR @ operations[0].operand.ad]

回答

0

首先,我從一點谷歌搜索發現,adToCopyImageFrom是我不得不爲了使用在廣告的圖像特性複製(ImageAd只!)爲了克隆。因此,如果$currentAd是包含您現有的ImageAdAdGroupAd對象,並且您正嘗試創建一個新的$newAd並希望複製圖像,則可以執行以下操作(不確定這是否是最好的方法,但對我而言效果不錯! ):

$newAd = new ImageAd(); 
$newAd = $ad->ad; 
// Let Google do the image copying 
// Remember $currentAd is a AdGroupAd and not an Ad 
$newAd->adToCopyImageFrom = $currentAd->ad->id; 
$newAd->id = null; 
$newAd->image = null; 

同樣,對於ResponsiveDisplayAd,這裏是我做過什麼:

$newRespAd = new ResponsiveDisplayAd(); 
// Make sure you included MediaId while fetching 
// $currentRespAd 
$newRespAd = $currentRespAd->ad; 
$newRespAd->id = null;