Seçiciler

Seçiciler, programcının istenen Google Ads öğelerini getiren sorguyu oluşturmasına yardımcı olur. Seçiciler sayesinde, alınan öğelerin listesini daraltabilir ve listeyi sıralayabilirsiniz. Çoğu seçicinin aşağıdaki yöntemleri vardır:

withCondition()
Seçiciye koşul ekler. Birden fazla koşul kullanılıyorsa bunlar VE mantığıyla birleştirilir. Diğer bir deyişle, seçici yalnızca belirtilen koşulların tümünü karşılayan öğeleri döndürür.
withIds()
Koşul olarak bir kimlik koleksiyonu ekler. Kimliğe dayalı bir koşul, diğer tüm koşullarla VE operatörüyle birleştirilir.
forDateRange()
Bir koşul veya sıralama yan tümcesi, tıklama oranı veya gösterim sayısı gibi bir İstatistik alanına referans verdiğinde gereklidir. 100'den fazla gösterimi olan tüm kampanyaları isterseniz Google Ads komut dosyalarının incelenecek tarih aralığını bilmesi gerekir.
orderBy()
Döndürülen öğelerin sıralamasını belirtir.
withLimit()
Döndürülen öğelerin sayısını belirtilen değerle sınırlandırır. Özellikle "Dün en çok gösterim alan 10 anahtar kelime" gibi verileri getirmek için orderBy() ile birlikte yararlıdır. Varsayılan olarak tüm seçiciler sınırı 50.000 olarak ayarlar. Manuel olarak bir sınır belirleyerek sınırı artırabilirsiniz.

Bu yöntemler herhangi bir sırada çağrılabilir. Bunun tek istisnası, arama sırasının gerçekten önemli olduğu orderBy() hatasıdır: Bu yönteme yapılan birden fazla çağrıda birden fazla sıralama yan tümcesi belirtilir ve bu yan tümceler sırayla uygulanır. Aşağıdaki snippet'i düşünün:

selector = selector.forDateRange("LAST_14_DAYS")
    .orderBy("metrics.clicks DESC")
    .orderBy("metrics.ctr ASC");

Sonuçlar, tıklamalara göre azalan düzende sıralanır. Tıklama sayısı değerleri eşit olan sonuçlar, TO'ya göre artan düzende sıralanır.

Bir seçicinin yöntemlerine yapılan çağrılar birbirine bağlanabilir. Aşağıdaki kod

var campaignSelector = AdsApp.campaigns();
campaignSelector.withCondition("metrics.clicks > 10");
campaignSelector.withCondition("metrics.impressions > 1000");
campaignSelector.orderBy("metrics.impressions DESC");
campaignSelector.forDateRange("YESTERDAY");

daha kompakt bir şekilde yeniden yazılabilir:

var campaignSelector = AdsApp.campaigns()
  .withCondition("metrics.clicks > 10")
  .withCondition("metrics.impressions > 1000")
  .orderBy("metrics.impressions DESC")
  .forDateRange("YESTERDAY");

Seçici oluşturulduktan sonra selector.get() çağrılarak ondan bir Iterator elde edilebilir.

Seçiciyi verimli bir şekilde kullanmayla ilgili ipuçları ve püf noktaları için En İyi Uygulamalar bölümünü okuyun.