קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
הסלקטורים עוזרים למתכנת לבנות את השאילתה שמביאה את ישויות Google Ads המבוקשות. בעזרת סלקטורים אפשר לצמצם את רשימת הישויות שאוחזרו ולסדר אותה. לרוב הבוררים יש את השיטות הבאות:
withCondition()
הוספת תנאי לבורר. אם משתמשים בכמה תנאים, הם מחוברים באמצעות AND. כלומר, בורר הישויות יחזיר רק ישויות שמקיימות את כל התנאים שצוינו.
withIds()
Adds a collection of IDs as a
condition. תנאי שמבוסס על מזהה יצורף באמצעות AND לכל התנאים האחרים.
forDateRange()
נדרש כשמפנים לתנאי או לסעיף של סדר מיון לשדה Stats, כמו Ctr או Impressions. אם מבקשים את כל הקמפיינים עם יותר מ-100 חשיפות,
סקריפטים של Google Ads צריכים לדעת את טווח התאריכים לבדיקה.
orderBy()
מציין את הסדר של הישויות שמוחזרות.
withLimit()
מגבילה את מספר הישויות שמוחזרות לערך שצוין. הפונקציה הזו שימושית במיוחד בשילוב עם orderBy() כדי לאחזר נתונים כמו "10 מילות המפתח עם הכי הרבה חשיפות אתמול". כברירת מחדל, כל הסלקטורים יגדירו את המגבלה ל-50,000. אפשר להגדיל את המגבלה על ידי ציון מגבלה באופן ידני.
אפשר להפעיל את השיטות האלה בכל סדר. יוצא מן הכלל הוא orderBy(), שבו סדר הקריאות אכן משנה: כמה קריאות למתודה הזו יציינו כמה סעיפי מיון, והם יחולו לפי הסדר. נבחן את קטע הקוד הבא:
[null,null,["עדכון אחרון: 2025-08-27 (שעון UTC)."],[[["\u003cp\u003eSelectors in Google Ads scripts are used to retrieve specific entities like campaigns or keywords by constructing queries.\u003c/p\u003e\n"],["\u003cp\u003eSelectors offer methods like \u003ccode\u003ewithCondition()\u003c/code\u003e, \u003ccode\u003ewithIds()\u003c/code\u003e, \u003ccode\u003eforDateRange()\u003c/code\u003e, \u003ccode\u003eorderBy()\u003c/code\u003e, and \u003ccode\u003ewithLimit()\u003c/code\u003e to refine and order results.\u003c/p\u003e\n"],["\u003cp\u003eMultiple conditions added using \u003ccode\u003ewithCondition()\u003c/code\u003e are treated as AND conditions, requiring entities to satisfy all of them.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eorderBy()\u003c/code\u003e allows sorting results based on specified criteria, and calling it multiple times adds further ordering levels.\u003c/p\u003e\n"],["\u003cp\u003eChaining selector methods simplifies code and enhances readability by applying multiple operations in a single statement.\u003c/p\u003e\n"]]],[],null,["# Selectors help the programmer construct the query that fetches requested\nGoogle Ads entities. With selectors, one can narrow down the list of\nretrieved entities and order it. Most selectors have the following\nmethods:\n\n`withCondition()`\n: Adds a condition to a selector. If multiple conditions are used, they are\n AND-ed together, in other words, the selector will only return entities that\n satisfy **all** of the specified conditions.\n\n`withIds()`\n: Adds a collection of [IDs](/google-ads/scripts/docs/concepts/ids) as a\n condition. An ID-based condition will be AND-ed together with all the others.\n\n`forDateRange()`\n: Is needed when a condition or ordering clause references a\n [Stats](/google-ads/scripts/docs/reference/adsapp/adsapp_stats) field, such as\n Ctr or Impressions. If you request all campaigns with over 100 impressions,\n Google Ads scripts will need to know the date range to look into.\n\n`orderBy()`\n: Specifies the ordering of the returned entities.\n\n`withLimit()`\n: Limits the number of returned entities to the specified value. It is\n particularly useful in conjunction with `orderBy()` in order to fetch things\n like \"10 keywords with most impressions yesterday\". By default, all selectors\n will set the limit to 50,000. You can increase the limit by manually specifying\n a limit.\n\nThese methods can be called in any order. One exception is `orderBy()`, where\norder of calls indeed matters: multiple calls to this method will specify\nmultiple ordering clauses, and they will apply in order. Consider the\nfollowing snippet: \n\n selector = selector.forDateRange(\"LAST_14_DAYS\")\n .orderBy(\"metrics.clicks DESC\")\n .orderBy(\"metrics.ctr ASC\");\n\nThe results will be ordered by Clicks in descending order. Results with equal\nClicks values will be ordered by Ctr in ascending order.\n\nCalls to a selector's methods can be chained together. The following code \n\n var campaignSelector = AdsApp.campaigns();\n campaignSelector.withCondition(\"metrics.clicks \u003e 10\");\n campaignSelector.withCondition(\"metrics.impressions \u003e 1000\");\n campaignSelector.orderBy(\"metrics.impressions DESC\");\n campaignSelector.forDateRange(\"YESTERDAY\");\n\ncan be re-written in a more compact fashion: \n\n var campaignSelector = AdsApp.campaigns()\n .withCondition(\"metrics.clicks \u003e 10\")\n .withCondition(\"metrics.impressions \u003e 1000\")\n .orderBy(\"metrics.impressions DESC\")\n .forDateRange(\"YESTERDAY\");\n\nOnce the selector is constructed, one can obtain an\n[Iterator](/google-ads/scripts/docs/concepts/iterators) from it by calling\n`selector.get()`.\n| **Note:** Some selectors (for example [`AdParamSelector`](/google-ads/scripts/docs/reference/adsapp/adsapp_adparamselector) and [`LabelSelector`](/google-ads/scripts/docs/reference/adsapp/adsapp_labelselector)) expose fewer methods since they operate on entities that are more restricted (don't have any stats or meaningful fields to order by).\n\nRead [Best Practices](/google-ads/scripts/docs/best-practices) for tips\nand tricks on efficient selector usage."]]