Etiketleri yönetmek için betik örnekleri
Aşağıdaki bölümlerde etiketlere karşı çeşitli eylemler gerçekleştiren betik örnekleri gösterilir.
Hesaba etiket ekleme
Etiketleri kullanmak için önce bunları hesabınıza ekleyin. Hesaba en fazla 100.000 etiket ekleyebilirsiniz. Etiket eklemek için createLabel yöntemini kullanın. yöntemi etiketin adını, açıklamasını ve arka plan rengini girdi olarak alır.
Ad gereklidir, ancak açıklama ve renk isteğe bağlıdır. Ad büyük/küçük harfe duyarlıdır, 80 karakteri aşamaz ve hesap içinde benzersiz olmalıdır. Renk isteğe bağlı olsa da, belirtmezseniz hizmet sizin için rastgele bir renk seçer. Rengi, form #RRGGBB (örneğin, CB0400) veya kırmızı, sarı ve su gibi bilinen 16 renk adlarından birini kullanarak üç baytlık onaltılık bir sayı kullanarak belirtebilirsiniz. Bir renk belirtirseniz, bir açıklama belirtmeniz gerekir, ancak boş bir dize olabilir.
Aşağıdaki örnekte yöntemini çağırmanın üç yolu gösterilmektedir createLabel
.
function main() {
AdsApp.createLabel("foo");
AdsApp.createLabel("bar", "a descriptive description", "aqua");
AdsApp.createLabel("foo foo", "", "#FF0000");
}
Hesabın etiketlerini listeleme
Hesaptaki etiketlerin listesini almak için etiketler yöntemini kullanın. =, CONTAINS ve STARTS_WITH gibi standart dize işleçlerini kullanarak listeyi etiketin adına göre filtreleyebilirsiniz.
function main() {
// Gets all the labels in the account
var accountLabels = AdsApp.labels()
.get();
Logger.log(`selector returned ${accountLabels.totalNumEntities()} labels that matched the selector's conditions`);
// Gets all the labels in the account that contain foo in the name
accountLabels = AdsApp.labels()
.withCondition("Name CONTAINS 'foo'")
.get();
Logger.log(`selector returned ${accountLabels.totalNumEntities()} labels that matched the selector's conditions`);
// Gets the first 15 labels in the account
accountLabels = AdsApp.labels()
.withLimit(15)
.get();
Logger.log(`selector returned ${accountLabels.totalNumEntities()} labels that matched the selector's conditions`);
// Gets the first 15 labels in the account that contain foo in the name
accountLabels = AdsApp.labels()
.withCondition("Name CONTAINS 'foo'")
.withLimit(15)
.get();
Logger.log(`selector returned ${accountLabels.totalNumEntities()} labels that matched the selector's conditions`);
while (accountLabels.hasNext()){
var label = accountLabels.next();
}
}
Anahtar sözcüklere etiket uygulama
Etiketler yalnızca bunları anahtar sözcükler gibi varlıklara uyguladığınızda yararlıdır. Bir anahtar kelimeye etiket uygulamak için anahtar sözcüğün applyLabel yöntemini kullanın. Bir anahtar sözcük için en fazla 50 etiket uygulayabilirsiniz. yöntemi etiketin adını girdi olarak alır. Etiketin adı büyük/küçük harfe duyarlıdır, hesapta bulunmalıdır ve anahtar sözcük içinde benzersiz olmalıdır.
Aşağıdaki örnekte anahtar sözcüklere etiket ekleme, anahtar sözcüğün etiketlerini listeleme ve anahtar sözcükten etiketleri kaldırma gösterilmektedir.
function main() {
// Get a keyword to add labels to
var keyword = AdsApp.keywords().withIds(["12345"]).get().next();
// Print the keyword's existing labels
var labels = keyword.labels().get();
printLabels(labels);
// Add labels to the keyword
keyword.applyLabel("foo");
keyword.applyLabel("foo foo");
keyword.applyLabel("bar");
// Print the new list of labels
labels = keyword.labels().get();
printLabels(labels);
// Remove labels from the keyword
keyword.removeLabel("foo");
keyword.removeLabel("bar");
// Print the new list of labels
labels = keyword.labels().get();
printLabels(labels);
}
function printLabels(labels) {
Logger.log(`keyword has ${labels.totalNumEntities()} labels`);
while (labels.hasNext()){
var label = labels.next();
Logger.log(`name: ${label.getName()}
description: ${label.getDescription()}
color: ${label.getColor()}\n\n`);
}
}
Belirtilen etiketlerden herhangi birini içeren anahtar sözcükleri alma
Belirli etiket adlarını içeren anahtar sözcükleri almak için KeywordSelector nesnesinin withCondition() yöntemini kullanın. Etiket adlarına göre filtrelemek için LabelNames sütun adını kullanın. Bir veya daha fazla addan oluşan bir dizi belirtebilirsiniz. Adlar büyük/küçük harfe duyarlıdır, tam olarak eşleşmelidir ve hesapta bulunmalıdır. Aşağıdaki işleçleri uygulayabilirsiniz:
- CONTAINS_ALL — belirtilen etiketlerin tümünü içeriyorsa anahtar sözcüğü seçer
- CONTAINS_ANY — belirtilen etiketlerden herhangi birini içeriyorsa anahtar sözcüğü seçer
- CONTAINS_NONE — belirtilen etiketlerden hiçbirini içermiyorsa anahtar sözcüğü seçer
Etiket hesapta yoksa seçicinin başarısız olduğunu ve bir hata döndürdüğünü unutmayın.
function main() {
var keywords = AdsApp.keywords()
.withCondition('LabelNames CONTAINS_ANY ["foo", "bar"]')
.get();
while (keywords.hasNext()){
var keyword = keywords.next();
var labels = keyword.labels().get();
while (labels.hasNext()) {
var label = labels.next();
}
}
}
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin