常見問題

下方彙整了 Google Ads 指令碼論壇

常見的 JavaScript 錯誤

指令碼執行失敗並顯示「找不到函式:FUNCTION_NAME」

這通常是因為指令碼中輸入的函式名稱拼寫錯誤。

  1. 請確認函式名稱的拼寫正確無誤且正確無誤 拼字大小寫;例如:AdsApp.keywordz() 會產生這個錯誤,因為 keywordz 不是 AdsApp 類別。 由於 AdsApp.Keywords() 的拼字大小寫不正確, keywords() 函式。

  2. 檢查函式是否存在。例如:「AdsApp.keywords().next()」將會失敗 因為 AdsApp.keywords() 會傳回 KeywordSelectornext()KeywordIterator 物件的方法。 正確的代碼為 AdsApp.keywords().get().next()

我的指令碼可以執行,但沒有執行任何動作

此問題最常見的原因為 但您並未從 main() 方法呼叫該作業。這個 常發生在複製與貼上程式碼時 摘要

程式設計方法 程式碼片段
版本 1 (無法運作)
function main() {
  // Call to getAllCampaigns is missing, so this script does nothing.
}

function getAllCampaigns() {
  // AdsApp.campaigns() will return all campaigns that are not
  // removed by default.
  let campaignIterator = AdsApp.campaigns().get();
  console.log('Total campaigns found : ' +
      campaignIterator.totalNumEntities());
  while (campaignIterator.hasNext()) {
    let campaign = campaignIterator.next();
    console.log(campaign.getName());
  }
}
Version 2 (無法運作)
function main() {
  // Call to getAllCampaigns is missing, so this script does nothing.

  function getAllCampaigns() {
    // AdsApp.campaigns() will return all campaigns that are not
    // removed by default.
    let campaignIterator = AdsApp.campaigns().get();
    console.log('Total campaigns found : ' +
        campaignIterator.totalNumEntities());
    while (campaignIterator.hasNext()) {
      let campaign = campaignIterator.next();
      console.log(campaign.getName());
    }
  }
}
版本 3 (有效)
function main() {
  getAllCampaigns();
}

function getAllCampaigns() {
  // AdsApp.campaigns() will return all campaigns that are not removed
  // by default.
  let campaignIterator = AdsApp.campaigns().get();
  console.log('Total campaigns found : ' +
      campaignIterator.totalNumEntities());
  while (campaignIterator.hasNext()) {
    let campaign = campaignIterator.next();
    Logger.log(campaign.getName());
  }
}

升級指令碼時收到「找不到 getFinalUrl 函式」錯誤

將指令碼改為「已升級」版本時,您可能會遇到這個錯誤 網址。發生這種情況時 以 ad.getFinalUrl() 取代對 ad.getDestinationUrl() 的呼叫。 getFinalUrl()AdUrls 類別, 因此,您需要將程式碼變更為 ad.urls().getFinalUrl()

function main() {
  // Incorrect snippet. getFinalUrl is not a member of the Ad class.
  let ad = AdsApp.ads().get().next();
  let url = ad.getFinalUrl();

  // Correct snippet.
  let ad = AdsApp.ads().get().next();
  let url = ad.urls().getFinalUrl();
}

我沒有看到 X 的統計資料

無法取得特定實體或日期範圍的資料是常見的錯誤 您在執行報表或呼叫統計資料時可能會遇到一些問題。以下提供 建議做法:

  1. 檢查您要擷取統計資料或執行報表的日期範圍。

  2. 如果您為代管的廣告管理工具指令碼擷取帳戶層級統計資料 使用不同貨幣的帳戶,系統即會將費用退還給您 管理員帳戶

  3. Google Ads 可能沒有您正在尋找的資料。詳情請參閱資料新鮮度指南

要求新增功能

是否有功能 X 可用?

參閱我們的參考資料 說明文件

X 功能何時會推出?

我們會先盡力處理最多要求的功能。如果有你想看到的功能,請按照下列步驟操作:

  1. 首先,請按照以下方式確認 Google Ads 指令碼不支援此功能: 查看參考資料 說明文件

  2. 如果沒有,請搜尋 Google Ads 指令碼 論壇,看看 就已經介紹過如果有,請對討論串按讚 註解 (例如用途) 來分享其他詳細資料。

  3. 如果尚未提出功能要求,請在 Google Ads 指令碼論壇中開啟新串流,提出功能要求。務必 具體說明這項功能可以解決的用途可以的話,請提供 請參閱說明中心指南或 AdWords API 網誌文章 / 指南的連結 描述了這項功能這有助於其他開發人員 功能建議我們會根據功能要求的熱門程度,排定功能要求的優先順序。

  4. 將貼文標記為「功能要求」簡化管理工作 (以及 使用者),快速查看功能要求。

如何使用功能 X?

請參閱程式碼片段解決方案範例,說明如何 系統就會使用特定功能如果找不到合適的程式碼片段, 在論壇中提出要求。

仍然需要支援服務嗎?

如需相關協助,請造訪 取得說明頁面。