Gli script Google Ads consentono una gestione parziale delle tue campagne Shopping. Puoi utilizzare gli script per lavorare con le campagne Shopping esistenti, creare e gestire le gerarchie dei gruppi di prodotti ed eseguire report Shopping. Tuttavia, non puoi utilizzare gli script per creare campagne Shopping, impostare proprietà Shopping a livello di campagna (ad esempio: priorità della campagna, filtri inventario e così via) o collegare account Merchant Center.
Recuperare campagne Shopping e gruppi di annunci
Le campagne Shopping sono disponibili tramite la raccolta
shoppingCampaigns
di un oggetto
AdsApp
. Puoi recuperarli come di consueto tramite script:
const campaignName = "My first shopping campaign";
const campaignIterator = AdsApp.shoppingCampaigns()
.withCondition(`campaign.name = "${campaignName}"`)
.get();
for (const campaign of campaignIterator) {
...
}
Una volta recuperata una campagna, puoi ottenere i relativi gruppi di annunci in modo simile. Questa opzione è preferibile solo se devi intervenire sia sulla campagna sia sui relativi gruppi di annunci.
const adGroupIterator = campaign.adGroups()
.withCondition(`ad_group.name = "${adGroupName}"`)
.get();
for (const adGroup of adGroupIterator) {
...
}
Se prevedi di intervenire solo su gruppi di annunci specifici, puoi utilizzare il
metodo AdsApp.shoppingAdGroups()
per recuperare i gruppi di annunci senza recuperare prima la
campagna:
const adGroupIterator = AdsApp.shoppingAdGroups()
.withCondition(`campaign.name = "${campaignName}"`)
.withCondition(`ad_group.name = "${adGroupName}"`)
.get();
for (const adGroup of adGroupIterator) {
...
}
Annunci di prodotti
Gli script Google Ads ti consentono di
recuperare
i tuoi annunci con scheda di prodotto utilizzando
il metodo
ads()
di
ShoppingAdGroup
.
Puoi
creare
nuovi annunci di prodotto utilizzando il metodo
newAdBuilder()
di
ShoppingAdGroup
.
Iterare la gerarchia dei gruppi di prodotti
Puoi accedere alla radice della gerarchia dei gruppi di prodotti utilizzando il metodo
rootProductGroup
di
ShoppingAdGroup
.
Puoi quindi utilizzare il metodo
children
per scorrere i gruppi di prodotti secondari e attraversare la gerarchia dei gruppi di prodotti. Ogni nodo è un
oggetto ProductGroup
e puoi utilizzare il
metodo getDimension
per determinare il tipo effettivo di gruppo di prodotti. Puoi anche eseguire il cast
a un tipo più specifico (ad esempio,
ProductBrand
)
utilizzando il metodo di cast corrispondente (ad esempio,
asBrand
).
Il seguente snippet di codice mostra come attraversare in modo ricorsivo la gerarchia
del gruppo di prodotti.
walkTree(shoppingAdGroup.rootProductGroup(), 1);
function walkTree(root, level) {
// Logger.log(root.getDimension());
let description = "";
switch (root.getDimension()) {
case "ROOT":
description = "Root";
break;
case "CATEGORY":
description = root.asCategory().getName();
break;
case "BRAND":
description = root.asBrand().getName();
break;
// Handle more types here.
...
}
if (root.isOtherCase()) {
description = "Other";
}
const padding = new Array(level + 1).join('-');
console.log("%s, %s, %s, %s, %s, %s",
padding,
description,
root.getDimension(),
root.getMaxCpc(),
root.isOtherCase(),
root.getId().toFixed());
const children = root.children().get();
for (const child of children) {
walkTree(child, level + 1);
}
}
Seleziona un gruppo di prodotti specifico
Puoi selezionare gruppi di prodotti specifici in una gerarchia di gruppi di prodotti con il metodo
productGroups
di un'istanza
AdsApp
,
ShoppingCampaign
o
ShoppingAdGroup
. Questo approccio è più semplice rispetto all'attraversamento dell'intera gerarchia dei gruppi di prodotti quando si selezionano gruppi di prodotti specifici ai fini della gestione delle offerte. Il seguente snippet di codice mostra come selezionare tutti i gruppi di prodotti
con più di cinque clic e una percentuale di clic superiore a 0.01
nell'ultimo mese e aumenta l'offerta del 0.01
.
function main() {
const productGroups = AdsApp.productGroups()
.withCondition("metrics.clicks > 5")
.withCondition("metrics.ctr > 0.01")
.forDateRange("LAST_MONTH")
.get();
for (const productGroup of productGroups) {
productGroup.setMaxCpc(productGroup.getMaxCpc() + 0.01);
}
}
Aggiorna una gerarchia di gruppi di prodotti
Puoi aggiungere un gruppo di prodotti secondario a un gruppo di prodotti esistente utilizzando il metodo
newChild
. In questo modo ottieni un
ProductGroupBuilderSpace
oggetto, che puoi utilizzare per creare un gruppo di prodotti appropriato. Il
seguente snippet di codice aggiunge una suddivisione per un brand "cardcow" sotto la radice,
e poi la suddivide ulteriormente per i prodotti nuovi e ricondizionati.
const root = shoppingAdGroup.rootProductGroup();
// Add a brand product group for a "cardcow" under root.
const brandProductGroup = root.newChild()
.brandBuilder()
.withName("cardcow")
.withBid(1.2)
.build()
.getResult();
// Add new conditions for New and Refurbished cardcow brand items.
const newItems = brandProductGroup.newChild()
.conditionBuilder()
.withCondition("New")
.withBid(1.5)
.build()
.getResult();
// Refurbished items will use the bid from "cardcow" product group.
const refurbishedItems = brandProductGroup.newChild()
.conditionBuilder()
.withCondition("Refurbished")
.build()
.getResult();
Allo stesso modo, puoi rimuovere una suddivisione utilizzando il metodo
remove
di
ProductGroup
.
Viene eliminata anche l'intera gerarchia dei gruppi di prodotti sottostanti al gruppo di prodotti
che viene rimosso.
Gli script garantiscono che la gerarchia dei gruppi di prodotti sia in uno stato coerente dopo la creazione di ogni gruppo di prodotti, quindi non è necessario creare o eliminare il gruppo di prodotti corrispondente a "Tutto il resto" quando aggiorni la struttura della gerarchia dei gruppi di prodotti.
Il gruppo di prodotti "Tutto il resto"
Le gerarchie dei gruppi di prodotti Shopping contengono un gruppo di prodotti "Tutto il resto" ("Altro")
a ogni livello per gestire i prodotti che non corrispondono alla
condizione personalizzata creata nella gerarchia dei gruppi di prodotti. Puoi utilizzare il metodo
isOtherCase
per distinguere un normale gruppo di prodotti che hai aggiunto dal gruppo di prodotti
"Altro".
Il seguente snippet di codice recupera il gruppo di prodotti "Altro" nella gerarchia del gruppo di prodotti principale e ne stampa l'offerta.
const root = shoppingAdGroup.rootProductGroup();
const childProductGroups = root.children().get();
let everythingElseProductGroupFound = false;
for (const childProductGroup of childProductGroups) {
if (childProductGroup.isOtherCase()) {
console.log("'Everything else' product group found. Type of the " +
"product group is %s and bid is %s.",
childProductGroup.getDimension(),
childProductGroup.getMaxCpc());
everythingElseProductGroupFound = true;
break;
}
}
if (!everythingElseProductGroupFound) {
console.log("No 'Everything else' product group found under root " +
"product group.");
}
Quando suddividi un gruppo di prodotti foglia, gli script creano automaticamente un gruppo di prodotti "Altro" per garantire che la gerarchia dei gruppi di prodotti rimanga valida. Il gruppo di prodotti "Altro" eredita l'offerta del gruppo di prodotti principale.
Creare un nuovo gruppo di annunci Shopping
Gli script Google Ads ti consentono di creare un nuovo gruppo di annunci Shopping utilizzando il metodo
newAdGroupBuilder
di
ShoppingCampaign
.
Una volta creato
ShoppingAdGroup
,
puoi utilizzare il metodo
createRootProductGroup
per creare una nuova gerarchia di gruppi di prodotti.
Report
Gli script Google Ads supportano i report
product_group_view
e
shopping_performance_view
per aiutarti a monitorare il rendimento delle tue campagne Shopping. Puoi
scoprire di più sui report nella nostra
guida ai report.