Google Ads 指令碼支援下列廣告額外資訊:
如要進一步瞭解廣告額外資訊,請造訪說明中心。
Google Ads 指令碼可讓您在帳戶中存取支援的廣告額外資訊。 舉例來說,下列程式碼片段會存取網站連結:
const sitelinkIterator = AdsApp.extensions().sitelinks().get();
for (const sitelink of sitelinkIterator) {
// Do something with each sitelink
}
您可以使用個別的疊代器,以同樣的方式擷取其他支援的廣告額外資訊。
創作
您可以使用 Google Ads 指令碼建立支援的廣告額外資訊。例如,以下程式碼片段使用電話號碼建構工具,在您的帳戶中建立電話號碼:
const phoneNumberBuilder = AdsApp.extensions().newPhoneNumberBuilder();
const newPhoneNumber = phoneNumberBuilder
.withCountry("US")
.withPhoneNumber("6502530000")
.withCallOnly(false)
.build()
.getResult();
呼叫 build()
時,系統會在帳戶中建立電話號碼,但不會立即顯示在任何廣告中。您必須先將其新增至廣告活動或廣告群組:
// Add a phone number to a campaign.
campaign.addPhoneNumber(newPhoneNumber);
// Add a phone number to an ad group.
adGroup.addPhoneNumber(newPhoneNumber);
您可以使用與其他支援的建立工具,建立其他支援的廣告額外資訊,並將其連結至廣告活動或廣告群組。
取得統計資料
Google Ads 指令碼可讓您在帳戶、廣告活動或廣告群組層級存取支援的廣告額外資訊統計資料。
舉例來說,若要取得網站連結統計資料:
// 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());
您也可以透過類似的方式存取其他支援廣告額外資訊的統計資料。
修改廣告額外資訊
您可以使用 Google Ads 指令碼修改現有的支援廣告額外資訊。例如,下列程式碼片段會修改現有的 sitelink:
// 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"
其他支援的廣告額外資訊也適用相同概念。
存取廣告群組層級廣告額外資訊
Google Ads 指令碼可讓您存取廣告群組層級的廣告額外資訊。以下方法呼叫會傳回明確新增至廣告群組的電話號碼。請注意,如果廣告群組所屬廣告活動中已加入電話號碼,即使電話號碼符合在該廣告群組放送的廣告中顯示的資格,下列方法呼叫也不會傳回電話號碼。
// This will return phone numbers that have been explicitly added to this
// ad group.
const adGroupPhoneNumberIterator = adGroup.extensions().phoneNumbers().get();
您也可以以類似的方式,在廣告群組層級存取其他支援的廣告額外資訊。
存取帳戶層級廣告額外資訊
您可以使用 Google Ads 指令碼存取帳戶層級廣告額外資訊。您可以將摘要、行動應用程式和評論設為帳戶層級廣告額外資訊,但無法使用帳戶層級網站連結和電話號碼。下列方法呼叫會傳回已明確新增至帳戶的摘要。
// This will return callouts that have been explicitly added to your account.
const accountCalloutIterator =
AdsApp.currentAccount().extensions().callouts().get();
您也可以透過類似的方式存取帳戶層級行動應用程式和評論。
添加帳戶層級廣告額外資訊,與新增廣告活動層級或廣告群組層級廣告額外資訊類似。以下範例說明如何新增帳戶層級的摘要額外資訊:
// 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);
您也可以以類似方式新增帳戶層級行動應用程式和評論。
移除廣告活動、廣告群組和帳戶廣告額外資訊
您可以在帳戶層級從廣告活動和廣告群組中移除支援的廣告額外資訊。Google Ads 指令碼不支援一次從帳戶中移除廣告額外資訊。
// 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();
同樣地,移除廣告群組層級或帳戶層級行動應用程式的做法如下:
// 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);
如果所有行動應用程式都從廣告活動中移除,廣告活動就不會再有行動應用程式額外資訊。如要從廣告活動中移除所有行動應用程式,您必須擷取該廣告活動的行動應用程式清單,然後逐一移除。其他支援的廣告額外資訊的程序也相同。