انتخابگرها

انتخابگرها به برنامه نویس کمک می کنند تا پرس و جوی را بسازد که موجودیت های تبلیغاتی مورد نظر Google را واکشی کند. با انتخابگرها، می توان لیست موجودیت های بازیابی شده را محدود کرد و آن را سفارش داد. اکثر انتخابگرها روش های زیر را دارند:

withCondition()
یک شرط را به یک انتخابگر اضافه می کند. اگر چند شرط استفاده شود، آنها با هم AND-ed می شوند، به عبارت دیگر، انتخابگر فقط موجودیت هایی را برمی گرداند که همه شرایط مشخص شده را برآورده کنند.
withIds()
مجموعه ای از شناسه ها را به عنوان شرط اضافه می کند. یک شرط مبتنی بر ID همراه با سایر شرایط AND-ED خواهد شد.
forDateRange()
زمانی مورد نیاز است که یک شرط یا بند سفارش به یک فیلد آمار ، مانند Ctr یا Impressions اشاره می کند. اگر همه کمپین‌های دارای بیش از ۱۰۰ نمایش را درخواست کنید، اسکریپت‌های Google Ads باید محدوده تاریخ را بدانند.
orderBy()
ترتیب موجودیت های برگشتی را مشخص می کند.
withLimit()
تعداد موجودیت های برگشتی را به مقدار مشخص شده محدود می کند. این به ویژه در ارتباط با orderBy() به منظور واکشی مواردی مانند "10 کلمه کلیدی با بیشترین تعداد نمایش دیروز" مفید است. به‌طور پیش‌فرض، همه انتخاب‌کننده‌ها محدودیت را روی 50000 تنظیم می‌کنند. شما می توانید با تعیین دستی یک محدودیت، محدودیت را افزایش دهید.

این روش ها را می توان به هر ترتیبی فراخوانی کرد. یک استثناء orderBy() است، که در آن ترتیب فراخوانی ها واقعاً مهم است: چندین فراخوانی به این متد چندین عبارت سفارشی را مشخص می کند و آنها به ترتیب اعمال می شوند. قطعه زیر را در نظر بگیرید:

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

نتایج با کلیک ها به ترتیب نزولی مرتب می شوند. نتایج با مقادیر کلیک برابر با Ctr به ترتیب صعودی مرتب می شوند.

تماس‌ها با روش‌های انتخابگر را می‌توان به هم متصل کرد. کد زیر

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

را می توان به شکل فشرده تر بازنویسی کرد:

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

هنگامی که انتخابگر ساخته شد، می توان با فراخوانی selector.get() یک Iterator از آن بدست آورد.

برای نکات و ترفندها در مورد استفاده کارآمد از انتخابگر، بهترین شیوه ها را بخوانید.