סוגי מודעות

פלטפורמת Google Ads תומכת במגוון סוגי מודעות, כמו מודעות טקסט, מודעות תמונה ומודעות לנייד. במדריך הזה מוסבר איך ליצור מודעות, לאחזר אותן ולדווח עליהן באמצעות סקריפטים של Google Ads. סקירה כללית של כל סוגי המודעות שנתמכים ב-Google Ads זמינה במדריך ה-API.

יצירה

סקריפטים יכולים ליצור מודעות באמצעות השיטה newAd() במופעים של AdGroup. הפונקציה מחזירה AdBuilderSpace שיוצרת builders לסוגי מודעות נתמכים.

בקטע הקוד הבא אפשר לראות איך יוצרים מודעה רספונסיבית לרשת החיפוש:

let adOperation = adGroup.newAd().responsiveSearchAdBuilder()
    .withHeadlines(["Headline 1", "Headline 2", "Headline 3"])
    .withDescriptions(["Description 1", "Description 2"])
    .withFinalUrl("http://www.example.com")
    .withPath1("path1")
    .withPath2("path2")
    .build();

בדיקה

חלק מהמידע שמשויך לכל סוגי המודעות זמין באופן מיידי מ-Ad, כמו מזהה המודעה וסטטוס האישור שלה. בנוסף, אפשר להשהות, להפעיל או להסיר כל מודעה.

כדי לגשת לשדות שספציפיים לסוג מודעה מסוים, כמו כותרות של מודעה רספונסיבית לרשת החיפוש, משתמשים בשיטה asType() כדי ליצור AdViewSpace. כך מקבלים גישה לגרסה מורחבת של Ad שחושפת שיטות ספציפיות לסוג.

קטע הקוד הבא מאחזר את הכותרות של כל מודעה רספונסיבית לרשת החיפוש:

const iterator = AdsApp.ads().withCondition("Type = RESPONSIVE_SEARCH_AD").get();
while (iterator.hasNext()) {
  let ad = iterator.next();
  let responsiveSearchAd = ad.asType().responsiveSearchAd();
  let headlines = responsiveSearchAd.getHeadlines();
}

שימו לב שהתנאי Type = RESPONSIVE_SEARCH_AD מבטיח שכל מודעה מהאיטרטור היא מודעה רספונסיבית לרשת החיפוש. אם תנסו להציג מודעה עם סוג שגוי, תופיע שגיאה שתפסיק את הפעלת הסקריפט. לכן חשוב להציג שדות ספציפיים לסוג רק כשסוג המודעה ידוע.

בקטע הקוד הבא אפשר לראות איך משתמשים ב-Ad.isType() כדי לבדוק אם המודעה היא מהסוג הנכון:

if (ad.isType().responsiveSearchAd()) {
  let responsiveSearchAd = ad.asType().responsiveSearchAd();
  let headlines = responsiveSearchAd.getHeadlines();
  let descriptions = responsiveSearchAd.getDescriptions();
}

אי אפשר לסנן מודעות לפי טקסט של כותרת באמצעות כלים רגילים לבחירת רכיבים, אבל אפשר לסנן אותן ב-JavaScript אחרי שאחזרתם אותן:

const iterator = AdsApp.ads().withCondition("Type = RESPONSIVE_SEARCH_AD").get();
while (iterator.hasNext()) {
  let ad = iterator.next();
  let responsiveSearchAd = ad.asType().responsiveSearchAd();
  let headlines = responsiveSearchAd.getHeadlines();
  // Filter for ads containing a specific headline.
  if (headlines.some(h => h.getText().includes("Special Offer"))) {
    console.log(`Found ad with ID ${ad.getId()}`);
  }
}

דיווח

אפשר להשתמש בתצוגה ad_group_ad כדי להריץ שאילתות על שדות של מודעות, בנוסף לנתונים סטטיסטיים רגילים. לדוגמה, אפשר לסנן לפי סוג המודעה באמצעות ad_group_ad.ad.type. בקטע הקוד הבא אפשר לראות איך לאחזר את הנתונים הסטטיסטיים של כל המודעות הרספונסיביות לרשת החיפוש:

const results = AdsApp.search(
  "SELECT ad_group_ad.ad_group.id, " +
          "ad_group_ad.ad.id, " +
          "metrics.clicks, " +
          "metrics.impressions, " +
          "metrics.cost " +
  "FROM ad_group_ad " +
  "WHERE ad_group_ad.ad.type = 'RESPONSIVE_SEARCH_AD' " +
    "AND segments.date DURING LAST_7_DAYS");

while (results.hasNext()) {
  let row = results.next();
  let adId = row.adGroupAd.ad.id;
  let clicks = row.metrics.clicks;
  ...
}

סינון לפי תוכן הנכס

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

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

const results = AdsApp.search(
  "SELECT ad_group_ad.ad.id, " +
          "asset.text_asset.text, " +
          "metrics.clicks, " +
          "metrics.impressions " +
  "FROM ad_group_ad_asset_view " +
  "WHERE asset.text_asset.text LIKE '%Special Offer%' " +
    "AND ad_group_ad_asset_view.field_type = 'HEADLINE'");

while (results.hasNext()) {
  let row = results.next();
  let adId = row.adGroupAd.ad.id;
  let text = row.asset.textAsset.text;
  let clicks = row.metrics.clicks;
  console.log(`Ad ID ${adId} with headline "${text}" had ${clicks} clicks.`);
}

במדריך בנושא דוחות מוסבר איך להשתמש בדוחות בסקריפטים.