Reklam Uzantıları

Google Ads komut dosyaları aşağıdaki reklam uzantılarını destekler:

Reklam uzantıları hakkında daha fazla bilgi edinmek için Yardım Merkezi'ni ziyaret edin.

Google Ads komut dosyaları, hesabınızdaki desteklenen reklam uzantılarına erişmenize olanak tanır. Örneğin, aşağıdaki kod snippet'i site bağlantılarına erişmektedir:

const sitelinkIterator = AdsApp.extensions().sitelinks().get();
for (const sitelink of sitelinkIterator) {
  // Do something with each sitelink
}

Diğer desteklenen reklam uzantılarını, ilgili iteratörlerini kullanarak benzer şekilde alabilirsiniz.

içerik üretimi

Google Ads komut dosyaları, desteklenen reklam uzantıları oluşturmanıza olanak tanır. Örneğin, aşağıdaki kod snippet'inde hesapta telefon numarası oluşturmak için bir telefon numarası oluşturucu kullanılmaktadır:

const phoneNumberBuilder = AdsApp.extensions().newPhoneNumberBuilder();
const newPhoneNumber = phoneNumberBuilder
  .withCountry("US")
  .withPhoneNumber("6502530000")
  .withCallOnly(false)
  .build()
  .getResult();

build() arandığında, telefon numarası hesapta oluşturulur, ancak henüz hiçbir reklamın yanında gösterilmez. Bunu önce bir kampanyaya veya reklam grubuna eklemeniz gerekir:

// Add a phone number to a campaign.
campaign.addPhoneNumber(newPhoneNumber);

// Add a phone number to an ad group.
adGroup.addPhoneNumber(newPhoneNumber);

Desteklenen diğer reklam uzantıları, ilgili geliştiricilerle aynı şekilde oluşturulabilir ve kampanyalarla ya da reklam gruplarıyla ilişkilendirilebilir.

İstatistikleri alma

Google Ads komut dosyaları, desteklenen reklam uzantılarıyla ilgili istatistiklere hesap, kampanya veya reklam grubu düzeyinde erişmenize olanak tanır.

Örneğin, site bağlantısı istatistiklerini almak için:

// Account-level stats
// Get a sitelink in the account.
const sitelinkIterator = AdsApp.extensions().sitelinks().get();
const sitelink = sitelinkIterator.next();
const sitelinkStats = sitelink.getStatsFor("LAST_30_DAYS");
console.log(sitelinkStats.getClicks());

// Campaign-level stats.
// Get a sitelink in a campaign.
const campaignSitelinkIterator = campaign.extensions().sitelinks().get();
const campaignSitelink = campaignSitelinkIterator.next();
const campaignSitelinkStats = campaignSitelink.getStatsFor("LAST_30_DAYS");
console.log(campaignSitelinkStats.getClicks());

// Ad-group-level stats.
// Get a sitelink in an ad group.
const adGroupSitelinkIterator = adGroup.extensions().sitelinks().get();
const adGroupSitelink = adGroupSitelinkIterator.next();
const adGroupSitelinkStats = adGroupSitelink.getStatsFor("LAST_30_DAYS");
console.log(adGroupSitelinkStats.getClicks());

Desteklenen diğer reklam uzantılarının istatistiklerine benzer şekilde erişilebilir.

Reklam uzantılarını değiştirme

Desteklenen mevcut reklam uzantıları, Google Ads komut dosyalarıyla değiştirilebilir. Örneğin, aşağıdaki kod snippet'i mevcut bir site bağlantısını değiştirir:

// Get a sitelink in the account.
const sitelinkIterator = AdsApp.extensions().sitelinks().get();
const sitelink = sitelinkIterator.next();
console.log(sitelink.getLinkText()); // "original text"

// Get a sitelink from a campaign. Assume it's the same one as above.
const campaignSitelinkIterator = campaign.extensions().sitelinks().get();
const campaignSitelink = campaignSitelinkIterator.next();
console.log(campaignSitelink.getLinkText()); // "original text"

// Get a sitelink from an ad group. Assume it's the same one as above.
const adGroupSitelinkIterator = adGroup.extensions().sitelinks().get();
const adGroupSitelink = adGroupSitelinkIterator.next();
console.log(adGroupSitelink.getLinkText()); // "original text"

// Change the sitelink's link text. This change will affect all the campaigns
// and ad groups to which the sitelink belongs.
campaignSitelink.setLinkText("new link text");

// Same text!
console.log(campaignSitelink.getLinkText()); // "new link text"
console.log(adGroupSitelink.getLinkText()); // "new link text"
console.log(sitelink.getLinkText()); // "new link text"

Desteklenen diğer reklam uzantıları için de aynı kavramlar geçerlidir.

Reklam grubu düzeyindeki reklam uzantılarına erişme

Google Ads komut dosyaları, reklam grubu düzeyindeki reklam uzantılarına erişmenize olanak tanır. Aşağıdaki yöntem çağrısı, bir reklam grubuna açıkça eklenen telefon numaralarını döndürür. Reklam grubunun ait olduğu kampanyaya telefon numaraları eklenmişse aşağıdaki yöntem çağrısının, telefon numaraları söz konusu reklam grubundan yayınlanan reklamlarda görünmeye uygun olsa bile bunları iade etmeyeceğini unutmayın.

// This will return phone numbers that have been explicitly added to this
// ad group.
const adGroupPhoneNumberIterator = adGroup.extensions().phoneNumbers().get();

Desteklenen diğer reklam uzantılarına reklam grubu düzeyinde benzer bir şekilde erişilebilir.

Hesap düzeyinde reklam uzantılarına erişme

Google Ads komut dosyaları, hesap düzeyinde reklam uzantılarına erişmenize olanak tanır. Açıklama metinleri, mobil uygulamalar ve yorumlar hesap düzeyinde reklam uzantıları olarak eklenebilir ancak hesap düzeyinde site bağlantıları ve telefon numaraları kullanılamaz. Aşağıdaki yöntem çağrısı, hesabınıza açık bir şekilde eklenen açıklama metinlerini döndürür.

// This will return callouts that have been explicitly added to your account.
const accountCalloutIterator =
    AdsApp.currentAccount().extensions().callouts().get();

Hesap düzeyindeki mobil uygulamalara ve yorumlara benzer şekilde erişilebilir.

Hesap düzeyinde reklam uzantıları eklemek, kampanya düzeyinde veya reklam grubu düzeyinde reklam uzantıları eklemeye benzer. Aşağıdaki örnekte, hesap düzeyinde açıklama metni uzantısının nasıl ekleneceği gösterilmektedir:

// Create a new callout in the account. Without adding the new callout as an ad
// group, campaign or account extension, it won't actually serve.
const calloutBuilder = AdsApp.extensions().newCalloutBuilder();
const newCallout = calloutBuilder.withText("Sample Text").build().getResult();

// Add the new callout as an account-level extension. This enables it to serve
// for all campaigns in the account.
AdsApp.currentAccount().addCallout(newCallout);

Hesap düzeyinde mobil uygulamalar ve yorumlar da benzer şekilde eklenebilir.

Kampanya, reklam grubu ve hesap reklam uzantılarını kaldırma

Desteklenen reklam uzantıları, hesap düzeyinde kampanyalardan ve reklam gruplarından kaldırılabilir. Google Ads komut dosyaları, reklam uzantılarının bir hesaptan tek seferde kaldırılmasını desteklemez.

// Get a mobile app from a campaign.
const campaignMobileAppIterator = campaign.extensions().mobileApps().get();
const campaignMobileApp = campaignMobileAppIterator.next();

// Remove the mobile app.
campaign.removeMobileApp(campaignMobileApp);

// The mobile app still exists in the account and will be returned in the
// following iterator.
const mobileAppIterator = AdsApp.extensions().mobileApps().get();

Benzer şekilde, reklam grubu düzeyinde veya hesap düzeyinde bir mobil uygulamayı kaldırmak için:

// Get a mobile app from an ad group.
const adGroupMobileAppIterator = adGroup.extensions().mobileApps().get();
const adGroupMobileApp = adGroupMobileAppIterator.next();

// Remove the mobile app.
adGroup.removeMobileApp(adGroupMobileApp);

// Get an account-level mobile app.
const accountMobileAppIterator =
    AdsApp.currentAccount().extensions().mobileApps().get();
const accountMobileApp = accountMobileAppIterator.next();

// Remove the mobile app.
// Note that this removes the mobile app from the account level, so it will
// not serve as an account-level extension, but it will still exist in the
// account. It can still be added to an AdGroup or Campaign, or again as an
// account-level extension in the future.
AdsApp.currentAccount().removeMobileApp(accountMobileApp);

Bir kampanyadaki tüm mobil uygulamalar kaldırılırsa kampanyanın artık mobil uygulama uzantısı olmaz. Kampanyanızdaki tüm mobil uygulamaları kaldırmak için ilgili kampanyanın mobil uygulama listesini almanız ve uygulamaları tek tek kaldırmanız gerekir. Prosedür, desteklenen diğer reklam uzantıları için aynıdır.