اکثر نهادهای Google Ads روش getId() را نشان میدهند که شناسه آنها را برمیگرداند. اگرچه در بیشتر موارد کاملاً ضروری نیست، اما شناسهها ممکن است مفید باشند
وقتی
- کار کردن با گزارشها
- شناسهها روش خوبی برای پیوند دادن ردیف گزارش به نهاد واقعی Google Ads ارائه میدهند.
- حفظ نگاشت با یک پایگاه داده خارجی
- ممکن است ازقبل اطلاعات مبتنی بر شناسه در پایگاه داده خودتان ذخیره کرده باشید.
- بهدنبال کمی بهبود عملکرد هستید
واکشی با شناسه اغلب سریعتر از روشهای جایگزین است. کد واکشی یک نهاد واحد نیز کمی آسانتر است:
let campaigns = AdsApp.campaigns() .withIds([678678]) .get(); // versus let campaigns = AdsApp.campaigns() .withCondition("Name='My Campaign'") .get();
منحصربهفرد بودن
شناسههای پویش و شناسههای گروه آگهی منحصربهفرد هستند: هیچ دو پویش یا گروه آگهی
هرگز شناسه یکسانی نخواهند داشت. اما آگهیها و کلیدواژهها شناسههای ترکیبی دارند: شناسه یکتای کلیدواژه ترکیبی از شناسه گروه آگهی و شناسه کلیدواژه است.
بههمین ترتیب، شناسه یکتای آگهی ترکیبی از شناسه گروه آگهی و شناسه آگهی است. این موضوع بر نحوه فراخوانی selector.withIds() تأثیر میگذارد.
برای پویشها و گروههای آگهی، selector.withIds() انتظار آرایهای از اعداد را دارد:
let ids = [123123, 234234, 345345];
let campaignSelector = AdsApp.campaigns().withIds(ids);
اما برای آگهیها و کلیدواژهها، selector.withIds() به آرایهای از
آرایههای دو عنصری نیاز دارد که عنصر اول شناسه گروه آگهی است. تکهکد زیر
سه کلیدواژه را از گروه آگهی بازیابی میکند:
let adGroupId = 123123;
let keywordSelector = AdsApp.keywords().withIds([
[adGroupId, 234234],
[adGroupId, 345345],
[adGroupId, 456456]
]);
همین ساختار هنگام واکشی آگهیها اعمال میشود.
شناسههای موقت
هنگام کار با درخواست تغییر با چندین عملیات، گاهی اوقات باید از شناسههای موقت برای پیوند دادن منابع به یکدیگر استفاده کنید، زیرا نامهای کامل منبع تا زمانی که پاسخ API را دریافت نکنید دردسترس نخواهند بود. شناسههای موقت باید اعداد منفی باشند که با -۱ شروع میشوند و نمیتوانند در یک درخواست تغییر تکرار شوند. برای استفاده مؤثر از شناسههای موقت، باید کدی بنویسید تا مطمئن شوید شناسههای موقت تکراری ایجاد نمیکنید:
let nextId = -1;
function getNextTempId() {
const ret = nextId;
nextId -= 1;
return ret;
}
هر تماس متوالی با getNextTempId عددی را برمیگرداند که یک عدد کمتر از
قبلی است. ازآنجاییکه همه شناسههای موقت باید منفی باشند، از -۱ شروع کنید.
شناسههای موقت در کارهای مختلف یا درخواستهای تغییر بهخاطر سپرده نمیشوند. برای ارجاع دادن به منبعی که در درخواست جهش قبلی ایجاد شده است، از نام منبع واقعی آن استفاده کنید.