بیشتر نهادهای 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 را دریافت نکنید، نام کامل منابع در دسترس نخواهد بود. شناسه های موقت باید اعداد منفی باشند که با 1- شروع می شوند و نمی توانند در همان درخواست جهش تکرار شوند. برای استفاده موثر از شناسه های موقت، باید کدی بنویسید تا مطمئن شوید که شناسه های موقت تکراری ایجاد نمی کنید:
let nextId = -1;
function getNextTempId() {
const ret = nextId;
nextId -= 1;
return ret;
}
هر تماس متوالی به getNextTempId
یک عدد کمتر از قبلی را برمی گرداند. از آنجایی که همه شناسه های دمایی باید منفی باشند، از 1- شروع کنید.
شناسههای موقت در میان مشاغل یا درخواستهای تغییر یافته به خاطر نمیآیند. برای ارجاع به یک منبع ایجاد شده در درخواست جهش قبلی، از نام منبع واقعی آن استفاده کنید.