In Google Ads werden zahlreiche Anzeigentypen unterstützt, etwa Text-, Bild- und mobile Anzeigen. In diesem Leitfaden erfahren Sie, wie Sie Anzeigen mit Google Ads-Skripts erstellen, abrufen und Berichte dazu erstellen. Eine Übersicht der Anzeigentypen, die in Google Ads unterstützt werden, finden Sie im API-Leitfaden.
Erstellung
Mit Skripts können Anzeigen mithilfe der
newAd()
Methode für
AdGroup
Instanzen erstellt werden. Dadurch wird ein
AdBuilderSpace
zurückgegeben, mit dem Builder für
unterstützte Anzeigentypen erstellt werden.
Das folgende Snippet zeigt, wie Sie eine responsive Suchanzeige erstellen:
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();
Prüfung
Einige Informationen zu allen Anzeigentypen sind sofort über ein
Ad verfügbar, z. B. die
ID und der Genehmigungsstatus einer Anzeige. Außerdem kann jede Anzeige pausiert, aktiviert oder entfernt werden.
Wenn Sie auf Felder zugreifen möchten, die für einen bestimmten Anzeigentyp gelten, z. B. die Anzeigentitel einer responsiven Suchanzeige
, verwenden Sie die
asType()
Methode, um ein
AdViewSpace-Objekt zu erstellen.
Dadurch erhalten Sie Zugriff auf eine erweiterte Version des
Ad, die
typspezifische Methoden verfügbar macht.
Das folgende Snippet ruft die Anzeigentitel aller responsiven Suchanzeigen ab:
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();
}
Die Bedingung Type = RESPONSIVE_SEARCH_AD sorgt dafür, dass jede Anzeige aus dem Iterator eine responsive Suchanzeige ist. Wenn Sie versuchen, eine Anzeige mit einem falschen Typ aufzurufen, wird ein Fehler ausgelöst, der die Ausführung des Skripts beendet. Daher sollten Sie typspezifische Felder nur aufrufen, wenn der Typ einer Anzeige bekannt ist.
Das folgende Snippet zeigt, wie Sie feststellen, ob eine Anzeige den richtigen Typ hat
mit der
Ad.isType()
Methode:
if (ad.isType().responsiveSearchAd()) {
let responsiveSearchAd = ad.asType().responsiveSearchAd();
let headlines = responsiveSearchAd.getHeadlines();
let descriptions = responsiveSearchAd.getDescriptions();
}
Anzeigen können nicht mit Standardselektoren nach Anzeigentiteltext gefiltert werden. Sie können sie jedoch in JavaScript filtern, nachdem Sie sie abgerufen haben:
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()}`);
}
}
Berichte
Mit der ad_group_ad Ansicht kann
neben regulären Statistiken auch Anzeigenfelder abgefragt werden. Sie können beispielsweise mit
ad_group_ad.ad.typenach Anzeigentyp filtern.
Das folgende Snippet zeigt, wie Sie die Statistiken für alle responsiven Suchanzeigen abrufen:
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;
...
}
Nach Asset-Inhalt filtern
Wenn Sie responsive Suchanzeigen im großen Maßstab nach dem Inhalt ihrer Anzeigentitel oder
Textzeilen filtern möchten, verwenden Sie die
ad_group_ad_asset_view
Ressource. In dieser Ansicht wird jeder Anzeigentitel und jede Textzeile als separate Zeile behandelt, sodass Sie nach dem Text des Assets filtern können.
Das folgende Snippet ruft Statistiken für alle responsiven Suchanzeigen ab, die einen bestimmten Anzeigentitel enthalten:
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.`);
}
Weitere Informationen zur Berichterstellung in Skripts finden Sie im Leitfaden zu Berichten.