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.