בעיות נפוצות

זוהי רשימה של בעיות נפוצות שמעלים מפתחי סקריפטים של Google Ads.

שגיאות נפוצות ב-JavaScript

ריכזנו כאן כמה שגיאות JavaScript נפוצות.

הסקריפט נכשל עם השגיאה 'לא ניתן למצוא את הפונקציה: FUNCTION_NAME'

בדרך כלל השגיאה הזו נובעת משם פונקציה שנכתב בצורה שגויה בסקריפט.

  1. בודקים שהשם של הפונקציה מאוית נכון ושהשימוש באותיות רישיות וקטנות נכון. לדוגמה, AdsApp.keywordz() יגרום לשגיאה הזו כי keywordz היא לא פונקציה חוקית במחלקה AdsApp. הפונקציה AdsApp.Keywords() תיכשל גם אם האותיות הרישיות והקטנות בפונקציה keywords() לא יהיו מאויתות נכון.

  2. צריך לוודא שהפונקציה קיימת. לדוגמה, AdsApp.keywords().next() ייכשל כי AdsApp.keywords() מחזיר KeywordSelector בעוד ש-next() היא שיטה לאובייקט KeywordIterator. הקוד הנכון הוא AdsApp.keywords().get().next().

הסקריפט שלי פועל, אבל לא עושה כלום

הסיבה הנפוצה ביותר לבעיה הזו היא שיש לכם פונקציה שמבצעת פעולה, אבל אתם לא קוראים לה מה-method‏ main(). זה קורה בדרך כלל כשמעתיקים ומדביקים קטעי קוד מהמסמכים שלנו.

גישת תכנות קטע קוד
גרסה 1 (לא פועלת)
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());
  }
}
גרסה 2 (לא עובדת)
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());
    }
  }
}
גרסה 3 (פועלת)
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());
  }
}

מוצגת לי השגיאה "Cannot find function getFinalUrl" כשאני משדרג/ת את הסקריפטים שלי

יכול להיות שתיתקלו בשגיאה הזו כשאתם משנים את הסקריפט כדי שיפעל עם כתובות URL משודרגות. זה קורה כשמחליפים קריאות ל-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.

עדיין צריכים עזרה?

אם אתם צריכים עזרה בתחום שבו אנחנו יכולים לעזור, אתם יכולים להיכנס לדף קבלת עזרה.