用于带有标签的来电专用广告的Adwords脚本

时间:2019-01-11 22:53:05

标签: javascript google-adwords

我在广告参考指南https://developers.google.com/google-ads/scripts/docs/examples/ads中找不到如何参考仅致电广告。我还使用以下代码尝试将标签为“ Call_Only”的广告定位,但在脚本编辑器中使用此示例代码时,日志中没有返回任何结果:

function getLabelsByName() {
var labelIterator = AdsApp.labels()
  .withCondition('Name = "Call_Only"')
  .get();
if (labelIterator.hasNext()) {
var label = labelIterator.next();
Logger.log('Name: ' + label.getName());
Logger.log('Description: ' + label.getDescription());
Logger.log('Color: ' + label.getColor());
Logger.log('Number of campaigns: ' +
    label.campaigns().get().totalNumEntities());
Logger.log('Number of ad groups: ' +
    label.adGroups().get().totalNumEntities());
Logger.log('Number of ads: ' + label.ads().get().totalNumEntities());
Logger.log('Number of keywords: ' +
    label.keywords().get().totalNumEntities());
}
}

上面的代码不会提取任何带有此标签的广告。最终,目标是在特定时间暂停带有标签“ Call_Only”的特定通话广告。

有人可以为我指出正确的方向,以获取广告组中特定于通话的广告的标签,以及如何将其设置为在特定时间之前和之后暂停吗?

1 个答案:

答案 0 :(得分:0)

因此,在Ads脚本中,您必须使用迭代的想法。如果您正在查看标签,则必须根据情况循环遍历所有标签...找到标签后,然后对该标签重复相同的过程以查找广告系列,广告组....

function main() {
 var labelIterator = AdWordsApp.labels().get();
  while(labelIterator.hasNext()){
    var label = labelIterator.next();
        var campaignIterator = label.campaigns().get();
            while(campaignIterator.hasNext()){
                var campaign = campaignIterator.next();
                    var campaignName = campaign.getName();
              campaign.pause();
            }
  }
}