Standardmäßig werden Entitäten in Google Ads-Skripts mit Generatoren erstellt. Mit Generatoren können Sie eine Google Ads-Entität synchron oder asynchron erstellen. Sie können auch prüfen, ob der Vorgang erfolgreich war, und je nach Ergebnis entsprechende Maßnahmen ergreifen. Das folgende Code-Snippet zeigt, wie Sie mit einem Builder ein Keyword erstellen.
// Retrieve your ad group.
let adGroup = AdsApp.adGroups().get().next();
// Create a keyword operation.
let keywordOperation = adGroup.newKeywordBuilder()
.withCpc(1.2)
.withText("shoes")
.withFinalUrl("http://www.example.com/shoes")
.build();
// Optional: examine the outcome. The call to isSuccessful()
// will block until the operation completes.
if (keywordOperation.isSuccessful()) {
// Get the result.
let keyword = keywordOperation.getResult();
} else {
// Handle the errors.
let errors = keywordOperation.getErrors();
}
Alle Entitäten, die mit Google Ads-Skripts erstellt werden können, verwenden dieses Generatormuster.
Hinweise zur Leistung
Standardmäßig werden Google Ads-Skripts asynchron ausgeführt. So können Skripts Ihre Vorgänge als Batches gruppieren und eine hohe Leistung erzielen. Wenn Sie jedoch die
Vorgangs
methoden wie
isSuccessful()
und
getResult()
aufrufen, werden die ausstehenden Vorgänge in Google Ads-Skripts geleert, was zu
einer schlechten Leistung führen kann. Erstellen Sie stattdessen ein Array, um die Vorgänge zu speichern, und iterieren Sie dann durch dieses Array, um die Ergebnisse abzurufen.
| Schlechte Leistung | Gute Leistung |
|---|---|
for (let i = 0; i < keywords.length; i++) let keywordOperation = adGroup .newKeywordBuilder() .withText(keywords[i]) .build(); // Bad: retrieving the result in the same // loop that creates the operation // leads to poor performance. let newKeyword = keywordOperation.getResult(); newKeyword.applyLabel("New keywords"); } |
// Create an array to hold the operations let operations = []; for (let i = 0; i < keywords.length; i++) { let keywordOperation = adGroup .newKeywordBuilder() .withText(keywords[i]) .build(); operations.push(keywordOperation); } // Process the operations separately. Allows // Google Ads scripts to group operations into // batches. for (let i = 0; i < operations.length; i++) { let newKeyword = operations[i].getResult(); newKeyword.applyLabel("New keywords"); } |