Types d'annonce

Google Ads est compatible avec différents types d'annonces, comme les annonces textuelles, illustrées et pour mobile. Ce guide explique comment créer des annonces, les récupérer et générer des rapports à leur sujet à l'aide de scripts Google Ads. Pour obtenir une vue d'ensemble de tous les types d'annonces compatibles avec Google Ads, consultez le guide de l'API.

Création

Les scripts peuvent créer des annonces à l'aide de la newAd() méthode sur les AdGroup instances. Cette méthode renvoie un AdBuilderSpace qui crée des générateurs pour les types d'annonces compatibles.

L'extrait de code suivant montre comment créer une annonce responsive sur le Réseau de Recherche :

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();

Inspection

Certaines informations associées à tous les types d'annonces sont immédiatement disponibles à partir d'un Ad, comme l' ID et l'état d'approbation d'une annonce. De plus, n'importe quelle annonce peut être mise en veille, activée ou supprimée.

Pour accéder aux champs spécifiques au type d'annonce, tels que les titres d'une annonce responsive sur le Réseau de Recherche, utilisez la asType() méthode pour créer un AdViewSpace. Cela permet d'accéder à une version étendue de la Ad qui expose des méthodes spécifiques au type.

L'extrait de code suivant récupère les titres de chaque annonce responsive sur le Réseau de Recherche :

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();
}

Notez que la condition Type = RESPONSIVE_SEARCH_AD garantit que chaque annonce de l'itérateur est une annonce responsive sur le Réseau de Recherche. Si vous tentez d'afficher une annonce avec un type incorrect, une erreur se produit et l'exécution de votre script s'arrête. Il est donc important d'afficher les champs spécifiques au type uniquement lorsque le type d'une annonce est connu.

L'extrait de code suivant montre comment déterminer si une annonce est du bon type à l'aide de la Ad.isType() méthode :

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

Bien que vous ne puissiez pas filtrer les annonces par texte de titre à l'aide de sélecteurs standards, vous pouvez les filtrer en JavaScript après les avoir récupérées :

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()}`);
  }
}

Rapports

La vue ad_group_ad peut être utilisée pour interroger les champs d'annonce en plus des statistiques standards. Par exemple, vous pouvez filtrer par type d'annonce à l'aide de ad_group_ad.ad.type. L'extrait de code suivant montre comment récupérer les statistiques de toutes les annonces responsives sur le Réseau de Recherche :

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;
  ...
}

Filtrer par contenu d'élément

Pour filtrer les annonces responsives sur le Réseau de Recherche par contenu de leurs titres ou descriptions à grande échelle, utilisez la ad_group_ad_asset_view ressource. Cette vue traite chaque titre et description comme une ligne distincte, ce qui vous permet de filtrer le texte de l'élément.

L'extrait de code suivant récupère les statistiques de toutes les annonces responsives sur le Réseau de Recherche qui contiennent un titre spécifique :

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.`);
}

Pour en savoir plus sur la création de rapports dans les scripts, consultez le guide sur les rapports.