Selektory

Selektory pomagają programiście tworzyć zapytania, które pobierają odpowiednie elementy Google Ads. Dzięki selektorom można zawęzić listę wyodrębnionych elementów i je uporządkować. Większość selektorów ma te metody:

withCondition()
Dodaje warunek do selektora. Jeśli używasz kilku warunków, są one łączone za pomocą operatora AND. Innymi słowy, selektor zwróci tylko te elementy, które spełniają wszystkie określone warunki.
withIds()
Dodaje kolekcję identyfikatorów jako warunek. Warunek oparty na identyfikatorze zostanie połączony z pozostałymi warunkami za pomocą operatora ORAZ.
forDateRange()
Jest wymagany, gdy warunek lub klauzula sortowania odwołuje się do pola Statystyki, np. CTR lub Wyświetlenia. Jeśli chcesz pobrać dane ze wszystkich kampanii, które mają ponad 100 wyświetleń, skrypty Google Ads muszą znać zakres dat, w którym mają je wyszukiwać.
orderBy()
Określa kolejność zwracanych elementów.
withLimit()
Ogranicza liczbę zwracanych elementów do określonej wartości. Jest to szczególnie przydatne w połączeniu z opcją orderBy(), aby pobierać dane takie jak „10 słów kluczowych z największą liczbą wyświetleń w ubiegłym dniu”. Domyślnie limit dla wszystkich selektorów został ustawiony na 50 tys. Możesz zwiększyć limit, ręcznie podając jego wartość.

Te metody można wywoływać w dowolnej kolejności. Jedynym wyjątkiem jest metoda orderBy(), w której kolejność wywołań ma znaczenie: wielokrotne wywołania tej metody spowodują utworzenie wielu klauzul porządkujących, które będą stosowane kolejno. Rozważ ten fragment kodu:

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

Wyniki będą posortowane malejąco według liczby kliknięć. Wyniki z jednakowymi wartościami kliknięć zostaną posortowane według CTR w kolejności rosnącej.

Wywołania metod selektora można łączyć w łańcuchy. Ten kod

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

można napisać ponownie w bardziej zwartej formie:

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

Po utworzeniu selektora można z niego uzyskać Iterator, wywołując selector.get().

Zapoznaj się ze sprawdzonymi metodami, aby dowiedzieć się, jak efektywnie korzystać z selektorów.