Ad Extensions

AdWords スクリプトでは、アプリリンク表示オプション電話番号表示オプションコールアウト表示オプションレビュー表示オプションサイトリンクなどの広告表示オプションがサポートされています。

表示オプションの詳細については、ヘルプセンターの記事をご覧ください。

AdWords スクリプトでは、アカウントでサポートされている広告表示オプションを利用できます。たとえば、次のコードでサイトリンクにアクセスできます。

var sitelinkIterator = AdWordsApp.extensions().sitelinks().get();
while (sitelinkIterator.hasNext()) {
  var sitelink = sitelinkIterator.next();
}

その他の広告表示オプションも、それぞれのイテレータを使用して同様に取得できます。

作成

AdWords スクリプトでは、サポートされている広告表示オプションを作成することもできます。たとえば次のコードでは、電話番号ビルダーを使用して、アカウントの電話番号を作成しています。

var phoneNumberBuilder = AdWordsApp.extensions().newPhoneNumberBuilder();
var 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);

その他の広告表示オプションも、それぞれのビルダーを使用して作成し、キャンペーンや広告グループに関連付けることができます。

掲載結果データを取得する

AdWords スクリプトでは、サポートされている広告表示オプションの掲載結果データを、アカウント単位、キャンペーン単位、広告グループ単位で利用することができます。

サイトリンクのデータを取得するには次のようにします。

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

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

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

その他の広告表示オプションの掲載結果データも、同様の方法で利用できます。

広告表示オプションを変更する

サポートされている既存の広告表示オプションを、AdWords スクリプトを使って変更することができます。たとえば次のコードでは、既存のサイトリンクが変更されます。

// Get a sitelink in the account.
var sitelinkIterator = AdWordsApp.extensions().sitelinks().get();
var sitelink = sitelinkIterator.next();
Logger.log(sitelink.getLinkText()); // "original text"

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

// Get a sitelink from an ad group. Assume it's the same one as above.
var adGroupSitelinkIterator = adGroup.extensions().sitelinks().get();
var adGroupSitelink = adGroupSitelinkIterator.next();
Logger.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!
Logger.log(campaignSitelink.getLinkText()); // "new link text"
Logger.log(adGroupSitelink.getLinkText()); // "new link text"
Logger.log(sitelink.getLinkText()); // "new link text"

注: サイトリンクを変更すると、関連付けられているすべてのキャンペーンや広告グループの広告に影響します。アカウントで直接サイトリンクを取得したか、関連付けられているキャンペーンの CampaignSitelink や広告グループの AdGroupSitelink から取得したかによらず、影響があります。前述のコードはこの挙動を示した例です。

その他サポートされている広告表示オプションについても同様です。

広告グループ単位の広告表示オプションにアクセスする

AdWords スクリプトでは、広告グループ単位の広告表示オプションにアクセスすることができます。次のメソッド呼び出しを行うと、広告グループに対して明示的に追加された電話番号が返されます。なお、キャンペーンに追加された電話番号は、そのキャンペーン内の広告グループの広告に表示可能であっても、次のメソッド呼び出しでは返されない点にご注意ください。

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

その他の広告表示オプションにも、同様の方法で広告グループ単位でアクセスできます。

アカウント単位の広告表示オプションにアクセスする

AdWords スクリプトでは、アカウント単位の広告表示オプションにアクセスすることができます。アカウント単位の広告表示オプションとしてコールアウト、モバイルアプリ、レビューを追加できますが、アカウント単位のサイトリンクと電話番号は利用できません。次のメソッド呼び出しを行うと、アカウントに対して明示的に追加されたコールアウトが返されます。

// This will return callouts that have been explicitly added to your account.
var accountCalloutIterator =
    AdWordsApp.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.
var calloutBuilder = AdWordsApp.extensions().newCalloutBuilder();
var newCallout = calloutBuilder.withText("Sample Text").build().getResult();

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

アカウント単位のモバイルアプリやレビューも、同様の方法で追加できます。

キャンペーン、広告グループ、アカウントの広告表示オプションを削除する

サポートされている広告表示オプションを、キャンペーンや広告グループからアカウント単位で削除できます。AdWords スクリプトでは、広告表示オプションをアカウントから一度に削除することはできません。

// Get a mobile app from a campaign.
var campaignMobileAppIterator = campaign.extensions().mobileApps().get();
var 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.
var mobileAppIterator = AdWordsApp.extensions().mobileApps().get();

同様に、広告グループやアカウント単位のモバイルアプリを削除する方法は次のとおりです。

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

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

// Get an account-level mobile app.
var accountMobileAppIterator =
    AdWordsApp.currentAccount().extensions().mobileApps().get();
var 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.
AdWordsApp.currentAccount().removeMobileApp(accountMobileApp);

キャンペーンからモバイルアプリをすべて削除すると、そのキャンペーンにはモバイル アプリリンク表示オプションがなくなります。キャンペーンからすべてのモバイルアプリを削除するには、そのキャンペーンからモバイルアプリの一覧を取得し、1 つずつ削除する必要があります。この手順は、その他のサポートされている広告表示オプションの場合も同様です。

AdWords スクリプトとフィード

AdWords スクリプトを使って取得できるのはデフォルト フィードに含まれる表示オプションのみで、カスタム フィード内のアイテムはサポートされません。AdWords のフロントエンドを通して作成した表示オプションは、すべてデフォルト フィード内に作成されます。カスタム フィードについて、詳しくはフィードについての AdWords API のドキュメントをご覧ください。

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。