مشکلات رایج

این مجموعه‌ای از مشکلات رایج است که توسط توسعه‌دهندگان جاوااسکریپت Google Ads مطرح شده است.

خطاهای رایج جاوا اسکریپت

در اینجا چند خطای رایج جاوا اسکریپت آورده شده است.

اسکریپت با خطای «تابع پیدا نشد: FUNCTION_NAME» ناموفق است

این معمولاً نتیجه غلط املایی در نام تابع در متن است.

  1. بررسی کنید که نام تابع درست نوشته شده باشد و حروف بزرگ و کوچک آن درست باشد؛ برای مثال، AdsApp.keywordz() منجر به این خطا می‌شود، زیرا keywordz تابع معتبری در کلاس AdsApp نیست. AdsApp.Keywords() همچنین به‌دلیل املای نادرست برای تابع keywords() ناموفق خواهد بود.

  2. بررسی کنید که تابع وجود داشته باشد؛ برای مثال، AdsApp.keywords().next() ناموفق خواهد بود زیرا AdsApp.keywords() KeywordSelector برمی‌گرداند درحالی‌که next() روشی برای شیء KeywordIterator است. کد صحیح AdsApp.keywords().get().next() است.

دستورگان من اجرا می‌شود، اما کاری انجام نمی‌دهد

رایج‌ترین دلیل این مشکل این است که تابعی دارید که عملیاتی را انجام می‌دهد، اما آن را از روش main() فراخوانی نمی‌کنید. این اتفاق معمولاً زمانی می‌افتد که تکه‌کدها را از اسناد ما کپی و جای‌گذاری می‌کنید.

رویکرد کدنویسی تکه‌کد
نسخه ۱ (کار نمی‌کند)
function main() {
  // Call to getCampaigns is missing, so this script does nothing.
}

function getCampaigns() {
  // AdsApp.campaigns() will return all Search and Display 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());
  }
}
نسخه ۲ (کار نمی‌کند)
function main() {
  // Call to getCampaigns is missing, so this script does nothing.

  function getCampaigns() {
    // AdsApp.campaigns() will return all Search and Display 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());
    }
  }
}
نسخه ۳ (آثار)
function main() {
  getCampaigns();
}

function getCampaigns() {
  // AdsApp.campaigns() will return all Search and Display 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.getDestinationUrl() را با ad.getFinalUrl() جایگزین کنید. 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. اگر آمار سطح حساب را برای اسکریپت «مدیر Google Ads» که حساب‌هایی با ارزهای مختلف را مدیریت می‌کند بازیابی کنید، هزینه را با ارز حساب مدیر دریافت می‌کنید.

  3. ممکن است Google Ads هنوز داده‌های موردنظرتان را نداشته باشد. برای جزئیات، راهنمای تازگی داده ما را ببینید.

چگونه از ویژگی X استفاده کنم؟

برای دیدن نمونه‌هایی از نحوه استفاده از یک ویژگی خاص، تکه‌کدها و راه‌حل‌های ما را ببینید. اگر تکه‌کد مناسبی پیدا نکردید، می‌توانید در discord درخواست دهید.

هنوز به پشتیبانی نیاز دارید؟

اگر در زمینه‌ای که می‌توانیم کمک کنیم به راهنمایی نیاز دارید، به صفحه دریافت راهنمایی بروید.