بهترین روش ها برای تگ ها و مدیران برچسب

تاریخ انتشار: 29 جولای 2021

برچسب‌ها قطعه‌هایی از کد شخص ثالث هستند که معمولاً با یک مدیر برچسب در سایت درج می‌شوند. برچسب ها بیشتر برای بازاریابی و تجزیه و تحلیل استفاده می شوند.

تاثیر عملکرد تگ‌ها و مدیران برچسب در سایت‌ها بسیار متفاوت است. مدیران برچسب را می توان با یک پاکت مقایسه کرد: مدیر برچسب یک ظرف را فراهم می کند، اما اینکه با چه چیزی آن را پر می کنید و چگونه از آن استفاده می کنید، بیشتر به شما بستگی دارد.

در اینجا، تکنیک‌هایی را برای بهینه‌سازی تگ‌ها و مدیران برچسب برای عملکرد و Core Web Vitals مورد بحث قرار می‌دهیم. اگرچه این سند به Google Tag Manager اشاره می کند، بسیاری از ایده های مورد بحث برای سایر مدیران برچسب قابل اجرا هستند.

تاثیر بر Core Web Vitals

مدیران تگ اغلب می توانند با استفاده از منابع مورد نیاز برای بارگذاری سریع صفحه و پاسخگو نگه داشتن آن، به طور غیرمستقیم بر Core Web Vitals شما تأثیر بگذارند. پهنای باند را می توان صرف دانلود جاوا اسکریپت تگ منیجر برای سایت های شما، یا فراخوان های بعدی این کار کرد. زمان CPU در رشته اصلی را می توان صرف ارزیابی و اجرای جاوا اسکریپت موجود در مدیر تگ و تگ ها کرد.

بزرگترین رنگ محتوایی (LCP) در طول زمان بارگذاری صفحه حساس در برابر اختلاف پهنای باند آسیب پذیر است. علاوه بر این، مسدود کردن رشته اصلی می‌تواند زمان رندر LCP را به تاخیر بیاندازد .

تغییر چیدمان تجمعی (CLS) می تواند تحت تأثیر قرار گیرد، یا با به تاخیر انداختن بارگیری منابع مهم قبل از اولین رندر، یا با تزریق محتوا توسط مدیران برچسب به صفحه.

Interaction to Next Paint (INP) مستعد اختلاف CPU در رشته اصلی است و ما همبستگی بین اندازه مدیران برچسب و امتیازات INP ضعیف تر را مشاهده کرده ایم.

نوع تگ مناسب را انتخاب کنید

تأثیر برچسب ها بر عملکرد بر اساس نوع برچسب متفاوت است. به طور کلی، تگ های تصویر ("پیکسل") بیشترین کارایی را دارند و پس از آن الگوهای سفارشی و در آخر تگ های HTML سفارشی قرار می گیرند. برچسب های فروشنده بسته به عملکردی که اجازه می دهند متفاوت است.

به خاطر داشته باشید که نحوه استفاده از یک برچسب تأثیر زیادی بر عملکرد آن دارد. «پیکسل‌ها» تا حد زیادی کارایی بالایی دارند زیرا ماهیت این نوع برچسب محدودیت‌های شدیدی را در مورد نحوه استفاده از آنها اعمال می‌کند. تگ‌های HTML سفارشی لزوماً همیشه برای عملکرد بد نیستند، اما به دلیل سطح آزادی که به کاربران ارائه می‌دهند، می‌توان به راحتی از آنها به نحوی سوء استفاده کرد که برای عملکرد بد است.

هنگامی که به برچسب ها فکر می کنید، مقیاس را در نظر داشته باشید: تأثیر عملکرد هر تگ ممکن است ناچیز باشد - اما زمانی که ده ها یا صدها برچسب در همان صفحه استفاده می شود می تواند قابل توجه باشد.

همه اسکریپت ها نباید با یک مدیر برچسب بارگذاری شوند

مدیران برچسب معمولاً بهترین راه برای بارگیری منابعی نیستند که جنبه‌های بصری یا کاربردی فوری تجربه کاربر را پیاده‌سازی می‌کنند، مانند اطلاعیه‌های کوکی، تصاویر قهرمان یا ویژگی‌های سایت. استفاده از تگ منیجر برای بارگیری این منابع معمولاً تحویل آنها را به تاخیر می اندازد. این برای تجربه کاربر بد است و همچنین می تواند معیارهایی مانند LCP و CLS را افزایش دهد.

علاوه بر این، برخی از کاربران تگ منیجرها را مسدود می کنند. استفاده از تگ منیجر برای پیاده سازی ویژگی های UX ممکن است منجر به خرابی وب سایت برای برخی از کاربران شما شود.

مراقب تگ های HTML سفارشی باشید

تگ‌های HTML سفارشی سال‌هاست که وجود دارند و در اکثر سایت‌ها به‌شدت استفاده می‌شوند. تگ‌های HTML سفارشی به شما امکان می‌دهند کد خود را با محدودیت‌های کمی وارد کنید، زیرا علی‌رغم نام، کاربرد اصلی این تگ افزودن عناصر سفارشی <script> به یک صفحه است.

تگ های HTML سفارشی را می توان به طرق مختلف مورد استفاده قرار داد و تأثیر عملکرد آنها به طور قابل توجهی متفاوت است. هنگام اندازه گیری عملکرد سایت خود، توجه داشته باشید که اکثر ابزارها تأثیر عملکرد یک تگ HTML سفارشی را به مدیر برچسبی که آن را تزریق کرده است - به جای خود تگ نسبت می دهند.

ایجاد یک تگ سفارشی در گوگل تگ منیجر

تگ های سفارشی HTML می توانند یک عنصر را در صفحه اطراف وارد کنند. عمل درج عناصر در صفحه می‌تواند منشأ مشکلات عملکردی باشد و در برخی موارد باعث تغییر طرح‌بندی شود.

  • در اکثر مواقع، اگر عنصری در صفحه درج شود، مرورگر باید اندازه و موقعیت هر مورد را در صفحه دوباره محاسبه کند. این فرآیند به نام layout شناخته می شود. تاثیر عملکرد یک چیدمان منفرد حداقل است، اما زمانی که بیش از حد اتفاق می افتد می تواند به منبع مشکلات عملکرد تبدیل شود. تأثیر این پدیده روی دستگاه‌های پایین‌تر و صفحات با تعداد عناصر DOM زیاد است.
  • اگر یک عنصر صفحه قابل مشاهده پس از رندر شدن منطقه اطراف در DOM وارد شود، می تواند باعث تغییر طرح شود. این پدیده منحصر به مدیران برچسب نیست - با این حال، از آنجا که برچسب ها معمولا دیرتر از سایر قسمت های صفحه بارگیری می شوند، معمولاً پس از ارائه صفحه اطراف در DOM درج می شوند.

از الگوهای سفارشی استفاده کنید

الگوهای سفارشی برخی از عملیات مشابه تگ‌های HTML سفارشی را پشتیبانی می‌کنند، اما بر اساس یک نسخه جعبه‌شنودی جاوا اسکریپت ساخته شده‌اند که APIهایی را برای موارد استفاده رایج مانند تزریق اسکریپت و تزریق پیکسل ارائه می‌کند. همانطور که از نام آن پیداست، آنها اجازه می‌دهند یک الگو توسط یک کاربر قدرتمند ایجاد شود که می‌تواند با در نظر گرفتن عملکرد آن را بسازد. سپس کاربران فنی کمتری می توانند از این الگو استفاده کنند. این اغلب ایمن تر از ارائه دسترسی کامل به HTML سفارشی است.

با توجه به محدودیت‌های بیشتر اعمال شده بر روی قالب‌های سفارشی، این برچسب‌ها کمتر احتمال دارد که عملکرد یا مسائل امنیتی را نشان دهند. به همین دلایل، قالب های سفارشی برای همه موارد استفاده کار نمی کنند.

یک الگوی سفارشی در گوگل تگ منیجر

اسکریپت ها را به درستی تزریق کنید

استفاده از تگ منیجر برای تزریق یک اسکریپت یک مورد استفاده بسیار رایج است. روش پیشنهادی برای انجام این کار استفاده از یک قالب سفارشی و injectScript API است.

برای اطلاعات در مورد استفاده از injectScript API برای تبدیل یک تگ HTML سفارشی موجود، به تبدیل یک تگ موجود مراجعه کنید.

اگر باید از تگ HTML سفارشی استفاده کنید، به یاد داشته باشید:

  • کتابخانه‌ها و اسکریپت‌های شخص ثالث بزرگ باید با یک تگ اسکریپت بارگیری شوند (برای مثال <script src="external-scripts.js"> ) که یک فایل خارجی را دانلود می‌کند، نه اینکه مستقیماً محتوای اسکریپت را در برچسب کپی کنید. اگرچه استفاده نکردن از تگ <script> یک سفر رفت و برگشت جداگانه برای دانلود محتویات اسکریپت را حذف می کند، این عمل باعث افزایش اندازه ظرف می شود و از ذخیره اسکریپت به طور جداگانه توسط مرورگر جلوگیری می کند.
  • بسیاری از فروشندگان توصیه می کنند تگ <script> خود را در بالای <head> قرار دهند. با این حال، برای اسکریپت های بارگذاری شده با مدیر برچسب، این اغلب غیر ضروری است. در بیشتر موقعیت‌ها، مرورگر قبلاً تجزیه <head> را تا زمانی که مدیر تگ اجرا می‌کند به پایان رسانده است.

از پیکسل استفاده کنید

گاهی اوقات، اسکریپت های شخص ثالث را می توان با پیکسل های تصویر یا آی فریم جایگزین کرد. در مقایسه با همتایان مبتنی بر اسکریپت، پیکسل ها ممکن است از عملکرد کمتری پشتیبانی کنند، بنابراین اغلب به عنوان یک پیاده سازی کمتر ترجیح داده می شوند. با این حال، هنگامی که در داخل تگ منیجرها استفاده می‌شود، پیکسل‌ها می‌توانند پویاتر باشند، زیرا می‌توانند روی تریگرها فعال شوند و متغیرهای مختلف را ارسال کنند.

پیکسل‌ها کارآمدترین و ایمن‌ترین نوع تگ هستند، زیرا پس از اجرا شدن، هیچ جاوا اسکریپتی اجرا نمی‌شود. پیکسل ها دارای اندازه منبع بسیار کوچکی هستند (کمتر از 1 کیلوبایت) و باعث تغییر چیدمان نمی شوند.

برای اطلاعات بیشتر در مورد پشتیبانی آنها از پیکسل، با ارائه دهنده شخص ثالث خود تماس بگیرید. علاوه بر این، می‌توانید کد آنها را برای تگ <noscript> بررسی کنید. اگر فروشنده ای از پیکسل ها پشتیبانی می کند، اغلب پیکسل را در تگ <noscript> قرار می دهد.

تگ تصویر سفارشی در گوگل تگ منیجر

جایگزین های پیکسل

پیکسل‌ها عمدتاً به این دلیل محبوب شدند که در یک زمان یکی از ارزان‌ترین و مطمئن‌ترین راه‌ها برای درخواست HTTP در شرایطی بودند که پاسخ سرور مرتبط نیست (مثلاً هنگام ارسال داده‌ها به ارائه‌دهندگان تجزیه و تحلیل). APIهای navigator.sendBeacon() و fetch() keepalive برای رسیدگی به همین مورد استفاده طراحی شده اند، اما مسلماً قابل اعتمادتر از پیکسل ها هستند.

ادامه استفاده از پیکسل ها هیچ اشکالی ندارد - آنها به خوبی پشتیبانی می شوند و کمترین تأثیر را در عملکرد دارند. با این حال، اگر شما در حال ساخت بیکن های خود هستید، ارزش آن را دارد که از یکی از این API ها استفاده کنید.

sendBeacon()

navigator.sendBeacon() API برای ارسال مقادیر کمی داده به سرورهای وب در شرایطی که پاسخ سرور اهمیتی ندارد طراحی شده است.

const url = "https://example.com/analytics";
const data = JSON.stringify({
    event: "checkout",
    time: performance.now()
});

navigator.sendBeacon(url, data);

sendBeacon() یک API محدود دارد: فقط از ایجاد درخواست های POST پشتیبانی می کند و از تنظیم هدرهای سفارشی پشتیبانی نمی کند. این توسط تمام مرورگرهای مدرن پشتیبانی می شود .

واکشی API keepalive

keepalive پرچمی است که به Fetch API اجازه می‌دهد برای درخواست‌های غیرمسدود کننده مانند گزارش رویداد و تجزیه و تحلیل استفاده شود. با گنجاندن keepalive: true در پارامترهای ارسال شده به fetch() استفاده می شود.

const url = "https://example.com/analytics";
const data = JSON.stringify({
  event: "checkout",
  time: performance.now()
});

fetch(url, {
    method: 'POST',
    body: data,
    keepalive: true
});

اگر fetch() keepalive و sendBeacon() بسیار شبیه به هم به نظر می رسند، به این دلیل است که آنها هستند. در واقع، در مرورگرهای Chromium، sendBeacon() اکنون بر اساس fetch() keepalive ساخته شده است.

هنگام انتخاب بین fetch() keepalive و sendBeacon() ، مهم است که ویژگی ها و پشتیبانی مرورگر مورد نیاز خود را در نظر بگیرید. fetch() API به طور قابل توجهی انعطاف پذیرتر است. با این حال، keepalive از پشتیبانی مرورگر کمتری نسبت به sendBeacon() برخوردار است.

درک کنید که برچسب ها چه کاری انجام می دهند

برچسب ها اغلب با پیروی از راهنمایی های ارائه شده توسط یک فروشنده شخص ثالث ایجاد می شوند. اگر مشخص نیست کد فروشنده چه کاری انجام می دهد، از کسی که می داند بپرسید. گرفتن نظر دوم می تواند به تشخیص اینکه آیا یک برچسب پتانسیل ایجاد مشکلات عملکرد یا امنیتی را دارد کمک کند.

توصیه می‌کنیم برچسب‌ها را با مالک در مدیر برچسب برچسب‌گذاری کنید. به راحتی می توان فراموش کرد که صاحب یک برچسب چه کسی است، که منجر به ترس از حذف در صورت شکستن چیزی می شود!

محرک ها

در سطح بالا، بهینه‌سازی محرک‌های برچسب معمولاً شامل اطمینان از عدم راه‌اندازی برچسب‌ها بیش از حد لازم و انتخاب راه‌اندازی است که نیازهای تجاری را با هزینه‌های عملکرد متعادل می‌کند.

تریگرها کدهای جاوا اسکریپت هستند که اندازه و هزینه اجرای تگ منیجر را افزایش می دهند. در حالی که بیشتر محرک ها کوچک هستند، اثر تجمعی می تواند اضافه شود. به عنوان مثال، داشتن چندین رویداد کلیک یا راه‌اندازهای تایمر می‌تواند حجم کاری تگ منیجر را به‌طور چشمگیری افزایش دهد.

یک رویداد محرک مناسب را انتخاب کنید

تأثیر عملکرد یک برچسب می تواند متفاوت باشد. به طور کلی، هر چه تگ زودتر فعال شود، تأثیر بیشتری بر عملکرد دارد. منابع معمولاً در طول بارگذاری اولیه صفحه محدود می شوند و بنابراین بارگذاری یا اجرای یک منبع (یا برچسب) خاص منابع را از چیز دیگری دور می کند.

اگرچه انتخاب محرک های مناسب برای همه تگ ها مهم است، اما به ویژه برای برچسب هایی که منابع بزرگ را بارگیری می کنند یا اسکریپت های طولانی را اجرا می کنند، مهم است.

برچسب‌ها می‌توانند در نمایش‌های صفحه (معمولاً Page load ، در DOM Ready ، در Window Loaded ) یا بر اساس یک رویداد سفارشی فعال شوند. برای جلوگیری از تأثیرگذاری بر بارگذاری صفحه، پس از Window Loaded ، تگ های غیر ضروری را فعال کنید.

از رویدادهای سفارشی استفاده کنید

از رویدادهای سفارشی برای فعال کردن محرک‌ها در پاسخ به رویدادهای صفحه‌ای استفاده کنید که توسط محرک‌های داخلی Google Tag Manager پوشش داده نمی‌شوند. برای مثال، بسیاری از برچسب‌ها از محرک‌های مشاهده صفحه استفاده می‌کنند. با این حال، زمان بین DOM Ready و Window Loaded می‌تواند طولانی باشد، بنابراین تنظیم دقیق هنگام فعال شدن یک برچسب دشوار می‌شود. رویدادهای سفارشی می توانند راه حلی برای این مشکل باشند.

ابتدا یک تریگر رویداد سفارشی ایجاد کنید و برچسب های خود را برای استفاده از این تریگر به روز کنید.

راه‌انداز رویداد سفارشی در Google Tag Manager

برای فعال کردن ماشه، رویداد مربوطه را به لایه داده فشار دهید.

// Custom event trigger that fires after 2 seconds
setTimeout(() => {
  dataLayer.push({
    'event' : 'my-custom-event'
  });
}, 2000);

از شرایط محرک خاصی استفاده کنید

برای جلوگیری از شلیک برچسب ها در مواقع غیر ضروری، شرایط ماشه خاصی را تعریف کنید. یکی از ساده‌ترین و مؤثرترین راه‌ها برای انجام این کار این است که اطمینان حاصل شود که برچسب فقط در صفحاتی فعال می‌شود که واقعاً از آن استفاده می‌شود.

ایجاد شرایط در Google Tag Manager

متغیرهای داخلی را می توان در شرایط ماشه گنجاند تا شلیک برچسب را محدود کند.

تگ منیجر خود را در زمان مناسب بارگیری کنید

می‌توانید با تنظیم زمانی که خود مدیر برچسب بارگیری می‌شود، عملکرد را بهبود ببخشید. تریگرها، صرف نظر از اینکه چگونه پیکربندی شده اند، تا زمانی که مدیر برچسب بارگیری نشود، نمی توانند فعال شوند. وقتی تگ منیجر را بارگیری می‌کنید، آزمایش کنید، زیرا این می‌تواند تأثیری برابر یا بیشتر داشته باشد. این تصمیم بر تمام برچسب‌های یک صفحه تأثیر می‌گذارد.

با بارگذاری تگ منیجر بعداً، می‌توانید از مشکلات عملکرد آینده جلوگیری کنید، زیرا از بارگیری ناخواسته برچسب خیلی زود جلوگیری می‌کند.

متغیرها

برای خواندن داده ها از صفحه از متغیرها استفاده کنید. آنها در محرک ها و در خود برچسب ها مفید هستند.

مانند محرک‌ها، متغیرها کد جاوا اسکریپت را به مدیر برچسب اضافه می‌کنند و بنابراین می‌توانند باعث مشکلات عملکرد شوند. متغیرها می توانند نسبتا کوچک باشند، مانند کد برای خواندن بخش هایی از URL، کوکی ها، لایه داده یا DOM. آنها همچنین می توانند شامل جاوا اسکریپت سفارشی با قابلیت (و اندازه) نامحدود باشند.

استفاده از متغیرها را به حداقل برسانید، زیرا آنها به طور مداوم توسط مدیر برچسب ارزیابی می شوند. متغیرهای قدیمی را که دیگر برای کاهش اندازه اسکریپت مدیر برچسب و زمان پردازش استفاده می شود حذف کنید.

مدیریت برچسب

استفاده موثر از برچسب ها خطر مشکلات عملکرد را کاهش می دهد.

از لایه داده استفاده کنید

لایه داده یک آرایه جاوا اسکریپت از اشیاء است که حاوی اطلاعاتی در مورد صفحه است. این اشیاء حاوی تمام اطلاعاتی هستند که می خواهید به Google Tag Manager منتقل کنید.

لایه داده همچنین می تواند برای راه اندازی برچسب ها استفاده شود.

// Contents of the data layer
window.dataLayer = [{
    'pageCategory': 'signup',
    'visitorType': 'high-value'
  }];

// Pushing a variable to the data layer
window.dataLayer.push({'variable_name': 'variable_value'});

// Pushing an event to the data layer
window.dataLayer.push({'event': 'event_name'});

اگرچه Google Tag Manager را می توان بدون لایه داده استفاده کرد، اما اکیدا توصیه می شود. لایه داده، داده‌هایی را که توسط اسکریپت‌های شخص ثالث قابل دسترسی هستند، در یک مکان ادغام می‌کند، بنابراین دید بهتری را در استفاده از آن فراهم می‌کند. در میان چیزهای دیگر، این می تواند به کاهش محاسبات متغیر اضافی و اجرای اسکریپت کمک کند.

با استفاده از یک لایه داده، به جای دادن دسترسی کامل به متغیر جاوا اسکریپت یا DOM، می توانید کنترل کنید که برچسب ها به چه داده هایی دسترسی دارند.

مزایای عملکرد لایه داده ممکن است بصری نباشد، با توجه به اینکه به روز رسانی لایه داده باعث می شود Google Tag Manager همه متغیرهای کانتینر را دوباره ارزیابی کند و به طور بالقوه برچسب ها را راه اندازی کند، که مستلزم اجرای جاوا اسکریپت است. اگرچه ممکن است از لایه داده سوء استفاده کرد، به طور کلی، اگر به نظر می رسد لایه داده منبع مشکلات عملکرد است، خود ظرف احتمالاً مشکلات عملکردی دارد. لایه داده این مسائل را بیشتر آشکار می کند.

برچسب های تکراری و استفاده نشده را حذف کنید

تگ‌های تکراری زمانی رخ می‌دهند که یک برچسب علاوه بر تزریق از طریق مدیر برچسب، در نشانه‌گذاری HTML صفحه نیز گنجانده شود.

برچسب‌های استفاده نشده باید متوقف یا حذف شوند تا اینکه با استفاده از یک استثنای ماشه مسدود شوند. مکث یا حذف یک برچسب، کد را از ظرف حذف می کند. مسدود کردن ندارد.

هنگامی که برچسب های استفاده نشده حذف می شوند، محرک ها و متغیرها را بررسی کنید تا تعیین کنید که آیا می توان آنها را نیز حذف کرد.

برچسب‌های متوقف شده بر اندازه کانتینر تأثیر می‌گذارند، با این حال، کل محموله کوچک‌تر از زمانی است که برچسب‌ها فعال هستند.

از لیست های مجاز و رد استفاده کنید

از لیست‌های مجاز و رد برای پیکربندی محدودیت‌های بسیار دقیق روی برچسب‌ها، محرک‌ها و متغیرهای مجاز در یک صفحه استفاده کنید. این می تواند برای کمک به اجرای بهترین شیوه های عملکرد و سایر سیاست ها استفاده شود.

لیست های مجاز و رد از طریق لایه داده پیکربندی می شوند.

window.dataLayer = [{
  'gtm.allowlist': ['<id>', '<id>', ...],
  'gtm.blocklist': ['customScripts']
}];

برای مثال، می‌توانید از استفاده از تگ‌های HTML سفارشی، متغیرهای جاوا اسکریپت یا دسترسی مستقیم DOM جلوگیری کنید. این بدان معنی است که فقط پیکسل ها و برچسب های از پیش تعریف شده می توانند با داده های لایه داده استفاده شوند. در حالی که این محدود کننده است، می تواند منجر به اجرای یک مدیر برچسب کارآمدتر و ایمن تر شود.

استفاده از برچسب گذاری سمت سرور را در نظر بگیرید

به خصوص برای سایت‌های بزرگ‌تری که می‌خواهند روی داده‌های خود کنترل بیشتری داشته باشند، باید به برچسب‌گذاری سمت سرور توجه کرد. برچسب‌گذاری سمت سرور، کد فروشنده را از مشتری حذف می‌کند و با آن، پردازش را از مشتری به سرور تخلیه می‌کند.

به عنوان مثال، هنگام استفاده از برچسب گذاری سمت مشتری، ارسال داده به چندین حساب تجزیه و تحلیل مستلزم آن است که مشتری درخواست های جداگانه ای را برای هر نقطه پایانی آغاز کند. با برچسب گذاری سمت سرور، یک درخواست واحد توسط مشتری به کانتینر سمت سرور ارسال می شود و از آنجا این داده ها به حساب های تحلیلی مختلف ارسال می شود.

به خاطر داشته باشید که تگ سمت سرور فقط با برخی از برچسب ها کار می کند. سازگاری برچسب بسته به فروشنده متفاوت است.

برای اطلاعات بیشتر، به مقدمه ای برای برچسب گذاری سمت سرور مراجعه کنید.

ظروف

مدیران برچسب معمولاً چندین نمونه را که اغلب به عنوان کانتینر نامیده می‌شوند، در تنظیمات خود اجازه می‌دهند. چندین کانتینر را می توان در یک حساب مدیر برچسب کنترل کرد.

در هر صفحه فقط از یک ظرف استفاده کنید

چندین کانتینر در یک صفحه می تواند مشکلات عملکردی قابل توجهی ایجاد کند، زیرا سربار اضافی و اجرای اسکریپت را معرفی می کند. حداقل، خود کد تگ اصلی را کپی می‌کند که چون به عنوان بخشی از جاوا اسکریپت کانتینر تحویل داده می‌شود، نمی‌توان آن را دوباره بین کانتینرها استفاده کرد.

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

  • شامل یک کانتینر سبک‌تر «بار اولیه» و یک ظرف «بار دیرتر» سنگین‌تر، به جای یک ظرف بزرگ.
  • استفاده از یک کانتینر محدود برای کاربران فنی کمتر و یک کانتینر با محدودیت کمتر، اما با کنترل دقیق تر، برای برچسب های پیچیده تر.

اگر باید از چندین کانتینر در هر صفحه استفاده کنید، دستورالعمل‌های مدیر برچسب Google را برای راه‌اندازی چندین کانتینر دنبال کنید .

در صورت نیاز از ظروف جداگانه استفاده کنید

اگر از یک مدیر برچسب برای چندین ویژگی مانند یک برنامه وب و یک برنامه تلفن همراه استفاده می کنید، تعداد کانتینرهایی که استفاده می کنید می تواند به بهره وری گردش کار شما کمک کند یا به آن آسیب برساند. همچنین می تواند بر عملکرد تأثیر بگذارد.

اگر سایت‌ها از نظر کاربری و ساختار مشابه باشند، می‌توان از یک کانتینر در چندین سایت استفاده کرد. برای مثال، اگرچه برنامه‌های موبایل و وب یک برند ممکن است عملکردهای مشابهی داشته باشند، احتمالاً برنامه‌ها ساختار متفاوتی دارند و بنابراین به طور مؤثرتری از طریق کانتینرهای جداگانه مدیریت می‌شوند.

استفاده مجدد از یک کانتینر به طور گسترده می تواند پیچیدگی و اندازه ظرف را با اجبار منطق پیچیده برای مدیریت برچسب ها و محرک ها افزایش دهد.

به اندازه ظرف دقت کنید

اندازه کانتینر توسط برچسب ها، محرک ها و متغیرهای آن تعیین می شود. اگرچه یک کانتینر کوچک هنوز هم ممکن است بر عملکرد صفحه تأثیر منفی بگذارد، یک کانتینر بزرگ تقریباً مطمئناً تأثیر منفی خواهد گذاشت.

اندازه کانتینر نباید مهمترین معیار هنگام بهینه سازی استفاده از برچسب شما باشد. با این حال، اندازه ظروف بزرگ اغلب یک علامت هشدار دهنده است که از یک ظرف به خوبی نگهداری نمی شود و احتمالاً مورد سوء استفاده قرار می گیرد.

Google Tag Manager اندازه کانتینر را به 300 کیلوبایت محدود می کند و در مورد اندازه ظرف پس از رسیدن به 70٪ از محدودیت اندازه هشدار می دهد.

بیشتر سایت‌ها باید سعی کنند ظروف خود را کوچک‌تر از حد مجاز نگه دارند. برای مقایسه، میانه کانتینر سایت حدود 50 کیلوبایت است. به خودی خود، کتابخانه Google Tag Manager حدود 33 کیلوبایت فشرده است.

نسخه های کانتینر خود را نام ببرید

نسخه کانتینر یک عکس فوری از محتوای یک ظرف در یک زمان خاص است. استفاده از یک نام معنی دار و همراه با توضیح کوتاهی از تغییرات معنی دار در داخل می تواند کمک زیادی به رفع اشکالات عملکرد آینده کند.

گردش کار را تگ کنید

مهم است که تغییرات تگ های خود را مدیریت کنید تا تأثیر منفی بر عملکرد صفحه نداشته باشند.

قبل از استقرار تست کنید

برچسب‌های خود را قبل از استقرار آزمایش کنید تا مشکلات، عملکرد و موارد دیگر را قبل از ارسال آن‌ها بررسی کنید.

مواردی که هنگام آزمایش یک برچسب باید در نظر گرفت عبارتند از:

  • آیا تگ به درستی کار می کند؟
  • آیا تگ باعث تغییر چیدمان می شود؟
  • آیا تگ منابعی را بارگیری می کند؟ حجم این منابع چقدر است؟
  • آیا برچسب باعث ایجاد یک اسکریپت طولانی مدت می شود؟

حالت پیش نمایش

حالت پیش‌نمایش به شما امکان می‌دهد تغییرات برچسب‌ها را در سایت واقعی خود آزمایش کنید بدون اینکه لازم باشد ابتدا آن‌ها را در عموم قرار دهید. حالت پیش نمایش شامل یک کنسول اشکال زدایی است که اطلاعات مربوط به برچسب ها را ارائه می دهد.

زمان اجرای Google Tag Manager هنگام اجرا در حالت پیش‌نمایش متفاوت است (کمی کندتر) به دلیل سربار اضافی مورد نیاز برای افشای اطلاعات در کنسول اشکال‌زدایی. بنابراین، مقایسه اندازه‌گیری‌های Web Vitals جمع‌آوری‌شده در حالت پیش‌نمایش با اندازه‌گیری‌های جمع‌آوری‌شده در تولید توصیه نمی‌شود. با این حال، این اختلاف نباید بر رفتار اجرای خود برچسب ها تأثیر بگذارد.

تست مستقل

یک روش جایگزین برای آزمایش تگ ها، راه اندازی یک صفحه خالی حاوی یک محفظه با یک تگ است - برچسبی که در حال آزمایش آن هستید. این تنظیم آزمایشی کمتر واقع بینانه است و برخی از مشکلات را حل نمی کند (به عنوان مثال، اینکه آیا یک برچسب باعث تغییر طرح بندی می شود) - با این حال می تواند جداسازی و اندازه گیری تأثیر برچسب بر مواردی مانند اجرای اسکریپت را آسان تر کند. بررسی کنید که چگونه تلگراف از این رویکرد جداسازی برای بهبود عملکرد کد شخص ثالث استفاده می کند .

نظارت بر عملکرد تگ

Google Tag Manager Monitoring API می تواند برای جمع آوری اطلاعات در مورد زمان اجرای یک برچسب خاص استفاده شود. این اطلاعات به نقطه پایانی مورد نظر شما گزارش می شود.

برای اطلاعات بیشتر، نحوه ساخت مانیتور Google Tag Manager را ببینید.

نیاز به تایید برای تغییرات کانتینر

کد شخص اول معمولاً قبل از استقرار از طریق بررسی و آزمایش انجام می شود. با برچسب های خود نیز به همین صورت رفتار کنید.

یکی از راه‌های انجام این کار، افزودن تأیید دو مرحله‌ای ، که به تأیید سرپرست برای تغییرات کانتینر نیاز دارد. از طرف دیگر، اگر نمی‌خواهید به تأیید دو مرحله‌ای نیاز داشته باشید، اما همچنان می‌خواهید تغییرات را زیر نظر داشته باشید، می‌توانید اعلان‌های کانتینر را برای دریافت هشدارهای ایمیل درباره رویدادهای کانتینر انتخابی خود تنظیم کنید.

به طور دوره ای استفاده از برچسب را بررسی کنید

یکی از چالش های کار با برچسب ها این است که آنها در طول زمان انباشته می شوند: برچسب ها اضافه می شوند اما به ندرت حذف می شوند. بررسی دوره ای برچسب ها یکی از راه های معکوس کردن این روند است. فرکانس ایده آل برای انجام این کار بستگی به تعداد دفعات به روز رسانی برچسب های سایت شما دارد.

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

هنگام ممیزی برچسب ها، به یاد داشته باشید که محرک ها و متغیرها را پاک کنید. آنها اغلب می توانند علت مشکلات عملکرد نیز باشند.

برای اطلاعات بیشتر، به نگهداری اسکریپت های شخص ثالث تحت کنترل مراجعه کنید.

،

تاریخ انتشار: 29 جولای 2021

برچسب‌ها قطعه‌هایی از کد شخص ثالث هستند که معمولاً با یک مدیر برچسب در سایت درج می‌شوند. برچسب ها بیشتر برای بازاریابی و تجزیه و تحلیل استفاده می شوند.

تاثیر عملکرد تگ‌ها و مدیران برچسب در سایت‌ها بسیار متفاوت است. مدیران برچسب را می توان با یک پاکت مقایسه کرد: مدیر برچسب یک ظرف را فراهم می کند، اما اینکه با چه چیزی آن را پر می کنید و چگونه از آن استفاده می کنید، بیشتر به شما بستگی دارد.

در اینجا، تکنیک‌هایی را برای بهینه‌سازی تگ‌ها و مدیران برچسب برای عملکرد و Core Web Vitals مورد بحث قرار می‌دهیم. اگرچه این سند به Google Tag Manager اشاره می کند، بسیاری از ایده های مورد بحث برای سایر مدیران برچسب قابل اجرا هستند.

تاثیر بر Core Web Vitals

مدیران تگ اغلب می توانند با استفاده از منابع مورد نیاز برای بارگذاری سریع صفحه و پاسخگو نگه داشتن آن، به طور غیرمستقیم بر Core Web Vitals شما تأثیر بگذارند. پهنای باند را می توان صرف دانلود جاوا اسکریپت تگ منیجر برای سایت های شما، یا فراخوان های بعدی این کار کرد. زمان CPU در رشته اصلی را می توان صرف ارزیابی و اجرای جاوا اسکریپت موجود در مدیر تگ و تگ ها کرد.

بزرگترین رنگ محتوایی (LCP) در طول زمان بارگذاری صفحه حساس در برابر اختلاف پهنای باند آسیب پذیر است. علاوه بر این، مسدود کردن رشته اصلی می‌تواند زمان رندر LCP را به تاخیر بیاندازد .

تغییر چیدمان تجمعی (CLS) می تواند تحت تأثیر قرار گیرد، یا با به تاخیر انداختن بارگیری منابع مهم قبل از اولین رندر، یا با تزریق محتوا توسط مدیران برچسب به صفحه.

Interaction to Next Paint (INP) مستعد اختلاف CPU در رشته اصلی است و ما همبستگی بین اندازه مدیران برچسب و امتیازات INP ضعیف تر را مشاهده کرده ایم.

نوع تگ مناسب را انتخاب کنید

تأثیر برچسب ها بر عملکرد بر اساس نوع برچسب متفاوت است. به طور کلی، تگ های تصویر ("پیکسل") بیشترین کارایی را دارند و پس از آن الگوهای سفارشی و در آخر تگ های HTML سفارشی قرار می گیرند. برچسب های فروشنده بسته به عملکردی که اجازه می دهند متفاوت است.

به خاطر داشته باشید که نحوه استفاده از یک برچسب تأثیر زیادی بر عملکرد آن دارد. «پیکسل‌ها» تا حد زیادی کارایی بالایی دارند زیرا ماهیت این نوع برچسب محدودیت‌های شدیدی را در مورد نحوه استفاده از آنها اعمال می‌کند. تگ‌های HTML سفارشی لزوماً همیشه برای عملکرد بد نیستند، اما به دلیل سطح آزادی که به کاربران ارائه می‌دهند، می‌توان به راحتی از آنها به نحوی سوء استفاده کرد که برای عملکرد بد است.

هنگامی که به برچسب ها فکر می کنید، مقیاس را در نظر داشته باشید: تأثیر عملکرد هر تگ ممکن است ناچیز باشد - اما زمانی که ده ها یا صدها برچسب در همان صفحه استفاده می شود می تواند قابل توجه باشد.

همه اسکریپت ها نباید با یک مدیر برچسب بارگذاری شوند

مدیران برچسب معمولاً بهترین راه برای بارگیری منابعی نیستند که جنبه‌های بصری یا کاربردی فوری تجربه کاربر را پیاده‌سازی می‌کنند، مانند اطلاعیه‌های کوکی، تصاویر قهرمان یا ویژگی‌های سایت. استفاده از تگ منیجر برای بارگیری این منابع معمولاً تحویل آنها را به تاخیر می اندازد. این برای تجربه کاربر بد است و همچنین می تواند معیارهایی مانند LCP و CLS را افزایش دهد.

علاوه بر این، برخی از کاربران تگ منیجرها را مسدود می کنند. استفاده از تگ منیجر برای پیاده سازی ویژگی های UX ممکن است منجر به خرابی وب سایت برای برخی از کاربران شما شود.

مراقب تگ های HTML سفارشی باشید

تگ‌های HTML سفارشی سال‌هاست که وجود دارند و در اکثر سایت‌ها به‌شدت استفاده می‌شوند. تگ‌های HTML سفارشی به شما امکان می‌دهند کد خود را با محدودیت‌های کمی وارد کنید، زیرا علی‌رغم نام، کاربرد اصلی این تگ افزودن عناصر سفارشی <script> به یک صفحه است.

تگ های HTML سفارشی را می توان به طرق مختلف مورد استفاده قرار داد و تأثیر عملکرد آنها به طور قابل توجهی متفاوت است. هنگام اندازه گیری عملکرد سایت خود، توجه داشته باشید که اکثر ابزارها تأثیر عملکرد یک تگ HTML سفارشی را به مدیر برچسبی که آن را تزریق کرده است - به جای خود تگ نسبت می دهند.

ایجاد یک تگ سفارشی در گوگل تگ منیجر

تگ های سفارشی HTML می توانند یک عنصر را در صفحه اطراف وارد کنند. عمل درج عناصر در صفحه می‌تواند منشأ مشکلات عملکردی باشد و در برخی موارد باعث تغییر طرح‌بندی شود.

  • در اکثر مواقع، اگر عنصری در صفحه درج شود، مرورگر باید اندازه و موقعیت هر مورد را در صفحه دوباره محاسبه کند. این فرآیند به نام layout شناخته می شود. تاثیر عملکرد یک چیدمان منفرد حداقل است، اما زمانی که بیش از حد اتفاق می افتد می تواند به منبع مشکلات عملکرد تبدیل شود. تأثیر این پدیده روی دستگاه‌های پایین‌تر و صفحات با تعداد عناصر DOM زیاد است.
  • اگر یک عنصر صفحه قابل مشاهده پس از رندر شدن منطقه اطراف در DOM وارد شود، می تواند باعث تغییر طرح شود. این پدیده منحصر به مدیران برچسب نیست - با این حال، از آنجا که برچسب ها معمولا دیرتر از سایر قسمت های صفحه بارگیری می شوند، معمولاً پس از ارائه صفحه اطراف در DOM درج می شوند.

از الگوهای سفارشی استفاده کنید

الگوهای سفارشی برخی از عملیات مشابه تگ‌های HTML سفارشی را پشتیبانی می‌کنند، اما بر اساس یک نسخه جعبه‌شنودی جاوا اسکریپت ساخته شده‌اند که APIهایی را برای موارد استفاده رایج مانند تزریق اسکریپت و تزریق پیکسل ارائه می‌کند. همانطور که از نام آن پیداست، آنها اجازه می‌دهند یک الگو توسط یک کاربر قدرتمند ایجاد شود که می‌تواند با در نظر گرفتن عملکرد آن را بسازد. سپس کاربران فنی کمتری می توانند از این الگو استفاده کنند. این اغلب ایمن تر از ارائه دسترسی کامل به HTML سفارشی است.

با توجه به محدودیت‌های بیشتر اعمال شده بر روی قالب‌های سفارشی، این برچسب‌ها کمتر احتمال دارد که عملکرد یا مسائل امنیتی را نشان دهند. به همین دلایل، قالب های سفارشی برای همه موارد استفاده کار نمی کنند.

یک الگوی سفارشی در گوگل تگ منیجر

اسکریپت ها را به درستی تزریق کنید

استفاده از تگ منیجر برای تزریق یک اسکریپت یک مورد استفاده بسیار رایج است. روش پیشنهادی برای انجام این کار استفاده از یک قالب سفارشی و injectScript API است.

برای اطلاعات در مورد استفاده از injectScript API برای تبدیل یک تگ HTML سفارشی موجود، به تبدیل یک تگ موجود مراجعه کنید.

اگر باید از تگ HTML سفارشی استفاده کنید، به یاد داشته باشید:

  • کتابخانه‌ها و اسکریپت‌های شخص ثالث بزرگ باید با یک تگ اسکریپت بارگیری شوند (برای مثال <script src="external-scripts.js"> ) که یک فایل خارجی را دانلود می‌کند، نه اینکه مستقیماً محتوای اسکریپت را در برچسب کپی کنید. اگرچه استفاده نکردن از تگ <script> یک سفر رفت و برگشت جداگانه برای دانلود محتویات اسکریپت را حذف می کند، این عمل باعث افزایش اندازه ظرف می شود و از ذخیره اسکریپت به طور جداگانه توسط مرورگر جلوگیری می کند.
  • بسیاری از فروشندگان توصیه می کنند تگ <script> خود را در بالای <head> قرار دهند. با این حال، برای اسکریپت های بارگذاری شده با مدیر برچسب، این اغلب غیر ضروری است. در بیشتر موقعیت‌ها، مرورگر قبلاً تجزیه <head> را تا زمانی که مدیر تگ اجرا می‌کند به پایان رسانده است.

از پیکسل استفاده کنید

گاهی اوقات، اسکریپت های شخص ثالث را می توان با پیکسل های تصویر یا آی فریم جایگزین کرد. در مقایسه با همتایان مبتنی بر اسکریپت، پیکسل ها ممکن است از عملکرد کمتری پشتیبانی کنند، بنابراین اغلب به عنوان یک پیاده سازی کمتر ترجیح داده می شوند. با این حال، هنگامی که در داخل تگ منیجرها استفاده می‌شود، پیکسل‌ها می‌توانند پویاتر باشند، زیرا می‌توانند روی تریگرها فعال شوند و متغیرهای مختلف را ارسال کنند.

پیکسل‌ها کارآمدترین و ایمن‌ترین نوع تگ هستند، زیرا پس از اجرا شدن، هیچ جاوا اسکریپتی اجرا نمی‌شود. پیکسل ها دارای اندازه منبع بسیار کوچکی هستند (کمتر از 1 کیلوبایت) و باعث تغییر چیدمان نمی شوند.

برای اطلاعات بیشتر در مورد پشتیبانی آنها از پیکسل، با ارائه دهنده شخص ثالث خود تماس بگیرید. علاوه بر این، می‌توانید کد آنها را برای تگ <noscript> بررسی کنید. اگر فروشنده ای از پیکسل ها پشتیبانی می کند، اغلب پیکسل را در تگ <noscript> قرار می دهد.

تگ تصویر سفارشی در گوگل تگ منیجر

جایگزین های پیکسل

پیکسل‌ها عمدتاً به این دلیل محبوب شدند که در یک زمان یکی از ارزان‌ترین و مطمئن‌ترین راه‌ها برای درخواست HTTP در شرایطی بودند که پاسخ سرور مرتبط نیست (مثلاً هنگام ارسال داده‌ها به ارائه‌دهندگان تجزیه و تحلیل). APIهای navigator.sendBeacon() و fetch() keepalive برای رسیدگی به همین مورد استفاده طراحی شده اند، اما مسلماً قابل اعتمادتر از پیکسل ها هستند.

در ادامه استفاده از پیکسل ها هیچ مشکلی وجود ندارد - آنها به خوبی پشتیبانی می شوند و حداقل تأثیر عملکرد دارند. با این حال ، اگر در حال ساخت چراغ های خود هستید ، ارزش استفاده از یکی از این API ها را دارد.

sendBeacon()

navigator.sendBeacon() API برای ارسال مقادیر کمی از داده ها به سرورهای وب در شرایطی که پاسخ سرور اهمیتی ندارد ، طراحی شده است.

const url = "https://example.com/analytics";
const data = JSON.stringify({
    event: "checkout",
    time: performance.now()
});

navigator.sendBeacon(url, data);

sendBeacon() دارای یک API محدود است: فقط از ایجاد درخواست های پست پشتیبانی می کند و از تنظیم هدرهای سفارشی پشتیبانی نمی کند. این توسط همه مرورگرهای مدرن پشتیبانی می شود.

API API keepalive

keepalive پرچمی است که به API واکشی اجازه می دهد تا درخواست های غیر مسدود کننده مانند گزارش رویداد و تجزیه و تحلیل را انجام دهد. از آن استفاده می شود با استفاده از keepalive: true در پارامترهای منتقل شده به fetch() درست است.

const url = "https://example.com/analytics";
const data = JSON.stringify({
  event: "checkout",
  time: performance.now()
});

fetch(url, {
    method: 'POST',
    body: data,
    keepalive: true
});

اگر fetch() keepalive و sendBeacon() بسیار مشابه به نظر می رسد ، به این دلیل است که آنها هستند. در حقیقت ، در مرورگرهای کروم ، sendBeacon() اکنون بر روی fetch() keepalive ساخته شده است.

هنگام انتخاب بین fetch() keepalive و sendBeacon() ، مهم است که ویژگی ها و پشتیبانی مرورگر مورد نیاز خود را در نظر بگیرید. API Fetch () به طور قابل توجهی انعطاف پذیر تر است. با این حال ، keepalive نسبت به sendBeacon() پشتیبانی مرورگر کمتری دارد.

درک کنید که برچسب ها چه کاری انجام می دهند

برچسب ها اغلب با راهنمایی های زیر ارائه شده توسط یک فروشنده شخص ثالث ایجاد می شوند. اگر مشخص نیست کد فروشنده چه کاری انجام می دهد ، از کسی که می داند بپرسید. گرفتن نظر دوم می تواند به شناسایی کمک کند که آیا یک برچسب پتانسیل ایجاد مشکلات مربوط به عملکرد یا امنیت را دارد یا خیر.

توصیه می کنیم برچسب زدن برچسب ها را با یک مالک در مدیر TAG انجام دهید. فراموش می شود چه کسی صاحب یک برچسب است و منجر به ترس از حذف در صورت شکستن چیزی می شود!

محرک ها

در یک سطح بالا ، بهینه سازی TAG TAGE به طور کلی شامل اطمینان از عدم ایجاد برچسب های بیش از حد لازم و انتخاب محرکی است که نیازهای تجاری را با هزینه های عملکرد متعادل می کند.

محرک ها کد جاوا اسکریپت هستند که اندازه و هزینه اجرای مدیر برچسب را افزایش می دهد. در حالی که بیشتر محرک ها اندک هستند ، اثر تجمعی می تواند اضافه شود. به عنوان مثال ، داشتن چندین رویداد کلیک یا محرک های تایمر می تواند بار کاری مدیر برچسب را به طرز چشمگیری افزایش دهد.

یک رویداد ماشه مناسب را انتخاب کنید

تأثیر عملکرد یک برچسب می تواند متفاوت باشد. به طور کلی ، هرچه زودتر از آن آتش سوزی شود ، بر عملکرد بیشتر می شود. منابع به طور معمول در طول بار اولیه صفحه محدود می شوند و بنابراین بارگیری یا اجرای یک منبع خاص (یا برچسب) منابع را از چیز دیگری دور می کند.

اگرچه انتخاب محرک های مناسب برای همه برچسب ها مهم است ، اما برای برچسب هایی که منابع زیادی را بارگیری می کنند یا اسکریپت های طولانی را اجرا می کنند ، از اهمیت ویژه ای برخوردار است.

برچسب ها را می توان در نماهای صفحه (به طور معمول Page load ، در DOM Ready ، روی Window Loaded ) یا بر اساس یک رویداد سفارشی ایجاد کرد. برای جلوگیری از تأثیرگذاری در صفحه ، برچسب های غیر ضروری پس از Window Loaded .

از رویدادهای سفارشی استفاده کنید

در پاسخ به رویدادهای صفحه ای که توسط محرک های داخلی Google Tag Manager پوشش داده نمی شود ، از رویدادهای سفارشی برای آتش سوزی استفاده کنید. به عنوان مثال ، بسیاری از برچسب ها از محرک های صفحه استفاده می کنند. با این حال ، زمان بین DOM Ready و Window Loaded می تواند طولانی باشد ، بنابراین تنظیم دقیق در هنگام آتش گرفتن برچسب دشوار است. رویدادهای سفارشی می توانند راه حلی برای این مشکل باشند.

ابتدا یک ماشه رویداد سفارشی ایجاد کنید و برچسب های خود را به روز کنید تا از این ماشه استفاده کنید.

محرک رویداد سفارشی در Google Tag Manager

برای آتش سوزی ماشه ، رویداد مربوطه را به لایه داده فشار دهید.

// Custom event trigger that fires after 2 seconds
setTimeout(() => {
  dataLayer.push({
    'event' : 'my-custom-event'
  });
}, 2000);

از شرایط ماشه خاص استفاده کنید

شرایط خاص ماشه را برای جلوگیری از شلیک برچسب ها در هنگام غیر ضروری تعریف کنید. یکی از ساده ترین و مؤثرترین راه های انجام این کار اطمینان از این است که یک برچسب فقط در صفحاتی که در واقع استفاده می شود شلیک می کند.

شرایط را در Google Tag Manager تحریک کنید

متغیرهای داخلی را می توان در شرایط ماشه برای محدود کردن شلیک برچسب گنجانید.

مدیر برچسب خود را در یک زمان مناسب بارگیری کنید

شما می توانید با تنظیم هنگامی که خود مدیر برچسب بارگیری می شود ، عملکرد را بهبود بخشید. محرک ها ، صرف نظر از نحوه پیکربندی آنها ، نمی توانند تا زمانی که یک مدیر برچسب بارگذاری شود ، آتش بگیرند. با بارگیری مدیر برچسب ، آزمایش کنید ، زیرا این می تواند تأثیر برابر یا بیشتر داشته باشد. این تصمیم بر همه برچسب ها در یک صفحه تأثیر می گذارد.

با بارگیری مدیر TAG بعداً ، می توانید از مشکلات عملکرد آینده جلوگیری کنید ، زیرا مانع از بارگیری سهواً یک برچسب خیلی زود است.

متغیرها

برای خواندن داده ها از صفحه از متغیرها استفاده کنید. آنها در محرک ها و خود برچسب ها مفید هستند.

مانند محرک ها ، متغیرها کد جاوا اسکریپت را به مدیر برچسب اضافه می کنند و بنابراین می تواند باعث ایجاد مشکلات عملکرد شود. متغیرها می توانند نسبتاً ناچیز باشند ، مانند کد برای خواندن قطعات URL ، کوکی ها ، لایه داده ها یا DOM. آنها همچنین می توانند شامل جاوا اسکریپت سفارشی باشند که دارای قابلیت نامحدود (و اندازه) است.

استفاده متغیر را به حداقل برسانید ، زیرا آنها به طور مداوم توسط مدیر برچسب ارزیابی می شوند. متغیرهای قدیمی را که دیگر برای کاهش اندازه اسکریپت Tag Manager و زمان پردازش مورد استفاده استفاده نمی شود ، حذف کنید.

مدیریت برچسب

استفاده از برچسب ها به طور موثر خطر مشکلات عملکرد را کاهش می دهد.

از لایه داده استفاده کنید

لایه داده ها مجموعه ای از اشیاء جاوا اسکریپت است که حاوی اطلاعات مربوط به صفحه است. این اشیاء شامل تمام اطلاعاتی که می خواهید به Google Tag Manager منتقل کنید.

از لایه داده ها نیز می توان برای ایجاد برچسب ها استفاده کرد.

// Contents of the data layer
window.dataLayer = [{
    'pageCategory': 'signup',
    'visitorType': 'high-value'
  }];

// Pushing a variable to the data layer
window.dataLayer.push({'variable_name': 'variable_value'});

// Pushing an event to the data layer
window.dataLayer.push({'event': 'event_name'});

اگرچه Google Tag Manager بدون لایه داده قابل استفاده است ، اما به شدت توصیه می شود. لایه داده داده هایی را که توسط اسکریپت های شخص ثالث به یک مکان واحد قابل دسترسی است ، ادغام می کند ، بنابراین دید بهتری در استفاده از آن فراهم می کند. از جمله موارد دیگر ، این می تواند به کاهش محاسبات متغیر اضافی و اجرای اسکریپت کمک کند.

با استفاده از یک لایه داده ، می توانید به جای دادن متغیر کامل جاوا اسکریپت یا دسترسی به DOM ، آنچه را که توسط برچسب ها قابل دسترسی است ، کنترل کنید.

مزایای عملکرد لایه داده ممکن است شهودی نباشد ، با توجه به اینکه به روزرسانی لایه داده باعث می شود Google Tag Manager مجدداً همه متغیرهای کانتینر را ارزیابی کند و برچسب های بالقوه تحریک کننده را که مستلزم اجرای JavaScript است ، ارزیابی کند. اگرچه می توان از لایه داده سوء استفاده کرد ، به طور کلی ، اگر به نظر می رسد لایه داده منبع مشکلات عملکرد است ، احتمالاً خود ظرف دارای مشکلات عملکردی است. لایه داده این مسائل را آشکارتر می کند.

برچسب های تکراری و بلااستفاده را حذف کنید

برچسب های تکراری ممکن است هنگامی رخ دهد که یک برچسب علاوه بر تزریق از طریق یک مدیر برچسب ، در نشانه HTML در یک صفحه قرار گیرد.

برچسب های بلااستفاده باید به جای استفاده از استثناء ماشه متوقف یا حذف شوند. مکث یا حذف یک برچسب کد را از ظرف خارج می کند. مسدود کردن نیست.

هنگامی که برچسب های بلااستفاده برداشته می شوند ، محرک ها و متغیرها را بررسی کنید تا مشخص شود که آیا می توان آنها را حذف کرد.

برچسب های مکث اندازه کانتینر ضربه ، با این حال ، بار کل بار کوچکتر از زمانی است که برچسب ها فعال هستند.

از لیست های مجاز و انکار استفاده کنید

برای پیکربندی محدودیت های بسیار دانه ای در برچسب ها ، محرک ها و متغیرهای مجاز در یک صفحه ، از لیست های مجاز و انکار استفاده کنید. این می تواند برای کمک به اجرای بهترین شیوه ها و سایر سیاست ها استفاده شود.

لیست های مجاز و انکار از طریق لایه داده پیکربندی می شوند.

window.dataLayer = [{
  'gtm.allowlist': ['<id>', '<id>', ...],
  'gtm.blocklist': ['customScripts']
}];

به عنوان مثال ، شما می توانید از استفاده از برچسب های HTML سفارشی ، متغیرهای JavaScript یا دسترسی مستقیم DOM جلوگیری کنید. این بدان معنی است که فقط پیکسل ها و برچسب های از پیش تعریف شده می توانند با داده های لایه داده استفاده شوند. در حالی که این محدود کننده است ، می تواند منجر به اجرای مدیر TAG مدیر تر و ایمن تر شود.

استفاده از برچسب زدن سمت سرور را در نظر بگیرید

شایان ذکر است که سوئیچ به برچسب زدن به سمت سرور ، به ویژه برای سایتهای بزرگتر که می خواهند کنترل بیشتری بر داده های خود داشته باشند ، در نظر بگیرید. برچسب زدن سمت سرور کد فروشنده را از مشتری حذف می کند و با آن ، پردازش را از مشتری به سرور بارگیری می کند.

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

به خاطر داشته باشید که برچسب زدن سمت سرور فقط با برخی از برچسب ها کار می کند. سازگاری برچسب بسته به فروشنده متفاوت است.

برای اطلاعات بیشتر ، به مقدمه ای برای برچسب زدن سمت سرور مراجعه کنید.

ظروف

مدیران برچسب به طور معمول اجازه می دهند چندین نمونه ، که اغلب به آنها ظروف گفته می شود ، در داخل تنظیم خود قرار دهند. چندین کانتینر را می توان در یک حساب مدیر TAG کنترل کرد.

در هر صفحه فقط از یک ظرف استفاده کنید

چند ظرف در یک صفحه واحد می تواند مشکلات عملکرد قابل توجهی ایجاد کند ، زیرا اجرای اضافی و اجرای اسکریپت اضافی را معرفی می کند. حداقل ، کد برچسب اصلی خود را کپی می کند که ، همانطور که به عنوان بخشی از JavaScript کانتینر تحویل داده می شود ، نمی تواند بین ظروف استفاده شود.

نادر است که چندین ظروف به طور مؤثر مورد استفاده قرار گیرند. با این حال ، مواردی وجود دارد که اگر به خوبی کنترل شود ، این کار می تواند کار کند. به عنوان مثال:

  • از جمله یک ظرف سبک "بار اولیه" و یک ظرف سنگین تر "بار بعدی" ، به جای یک ظرف بزرگ.
  • با استفاده از یک ظرف محدود برای کاربران فنی کمتر و یک ظرف کمتر محدود ، اما محکم تر کنترل شده برای برچسب های پیچیده تر.

اگر باید در هر صفحه از چندین کانتینر استفاده کنید ، برای تنظیم چندین ظروف ، راهنمای Google Tag Manager را دنبال کنید .

در صورت لزوم از ظروف جداگانه استفاده کنید

اگر از یک مدیر برچسب برای چندین ویژگی مانند برنامه وب و یک برنامه تلفن همراه استفاده می کنید ، تعداد ظروف مورد استفاده شما می تواند به بهره وری گردش کار شما کمک کند یا به آن آسیب برساند. همچنین می تواند بر عملکرد تأثیر بگذارد.

اگر سایت ها از نظر استفاده و ساختار مشابه باشند ، می توان از یک ظرف منفرد به طور موثری در چندین سایت استفاده کرد. به عنوان مثال ، اگرچه برنامه های موبایل و وب یک برند ممکن است عملکردهای مشابهی را ارائه دهند ، اما به احتمال زیاد برنامه ها به صورت متفاوتی ساختار یافته اند و بنابراین از طریق ظروف جداگانه به طور مؤثر مدیریت می شوند.

استفاده مجدد از یک ظرف واحد به طور گسترده می تواند با مجبور کردن منطق پیچیده برای مدیریت برچسب ها و محرک ها ، پیچیدگی و اندازه ظرف را افزایش دهد.

به اندازه کانتینر توجه کنید

اندازه یک ظرف با برچسب ها ، محرک ها و متغیرها تعیین می شود. اگرچه یک ظرف کوچک هنوز هم ممکن است بر عملکرد صفحه تأثیر منفی بگذارد ، اما یک ظرف بزرگ تقریباً مطمئناً خواهد بود.

اندازه کانتینر هنگام بهینه سازی استفاده از برچسب شما نباید مهمترین متریک باشد. با این حال ، یک اندازه کانتینر بزرگ اغلب نشانه هشدار دهنده ای است که یک ظرف به خوبی نگهداری نمی شود و احتمالاً سوءاستفاده می شود.

Google Tag Manager اندازه ظرف را به 300 کیلوبایت محدود می کند و پس از رسیدن به 70 ٪ از حد اندازه ، در مورد اندازه کانتینر هشدار می دهد.

بیشتر سایت ها باید هدف خود را برای کوچکتر نگه داشتن ظروف خود از محدودیت داشته باشند. برای مقایسه ، ظرف سایت متوسط ​​حدود 50 کیلوبایت است. به خودی خود ، کتابخانه Google Tag Manager حدود 33 کیلوبایت فشرده شده است.

نسخه های کانتینر خود را نام ببرید

نسخه کانتینر عکس فوری از محتوای یک ظرف در یک نقطه خاص از زمان است. استفاده از یک نام معنی دار و همراه با توضیحات کوتاه از تغییرات معنی دار در درون می تواند مسیری طولانی را برای آسانتر کردن اشکال زدایی مسائل مربوط به عملکرد آینده طی کند.

گردش کار را برچسب بزنید

مدیریت تغییرات در برچسب های خود مهم است تا آنها تأثیر منفی بر عملکرد صفحه نداشته باشند.

قبل از استقرار آزمون

قبل از اعزام ، برچسب های خود را قبل از استقرار آزمایش کنید.

مواردی که باید هنگام تست یک برچسب در نظر بگیرید عبارتند از:

  • آیا برچسب به درستی کار می کند؟
  • آیا برچسب باعث تغییر طرح می شود؟
  • آیا برچسب منابع را بارگیری می کند؟ این منابع چقدر بزرگ هستند؟
  • آیا این برچسب یک اسکریپت طولانی مدت را ایجاد می کند؟

حالت پیش نمایش

حالت پیش نمایش به شما امکان می دهد بدون نیاز به استقرار آنها به عموم ، تغییرات برچسب را در سایت واقعی خود آزمایش کنید. حالت پیش نمایش شامل یک کنسول اشکال زدایی است که اطلاعات مربوط به برچسب ها را ارائه می دهد.

زمان اجرای Google Tag Manager هنگام اجرای در حالت پیش نمایش به دلیل سربار اضافی مورد نیاز برای افشای اطلاعات در کنسول اشکال زدایی ، متفاوت است (کمی کندتر). بنابراین ، مقایسه اندازه گیری های وب ویتامان جمع آوری شده در حالت پیش نمایش با موارد جمع آوری شده در تولید توصیه نمی شود. با این حال ، این اختلاف نباید بر رفتار اعدام خود برچسب ها تأثیر بگذارد.

تست مستقل

یک روش جایگزین برای آزمایش برچسب ها ، تنظیم یک صفحه خالی حاوی یک ظرف با یک برچسب واحد است - برچسب مورد نظر شما. این تنظیم آزمایش کمتر واقع بینانه است و برخی از مسائل را به خود جلب نمی کند (به عنوان مثال ، این که آیا یک برچسب باعث تغییر طرح می شود) - هرچند که می تواند جداسازی و اندازه گیری تأثیر برچسب در مواردی مانند اجرای اسکریپت را آسانتر کند. بررسی کنید که چگونه تلگراف از این روش جداسازی برای بهبود عملکرد کد شخص ثالث استفاده می کند .

عملکرد برچسب

از API مانیتورینگ Google Tag Manager می توان برای جمع آوری اطلاعات در مورد زمان اجرای یک برچسب خاص استفاده کرد. این اطلاعات به نقطه پایانی انتخاب شما گزارش شده است.

برای اطلاعات بیشتر ، به نحوه ساخت مانیتور Google Tag Manager مراجعه کنید.

برای تغییرات کانتینر نیاز به تأیید دارد

کد شخص اول به طور معمول قبل از استقرار از طریق بررسی و آزمایش انجام می شود. با برچسب های خود یکسان رفتار کنید.

افزودن تأیید دو مرحله ای ، که برای تغییر کانتینر به تأیید مدیر نیاز دارد ، یکی از راه های انجام این کار است. از طرف دیگر ، اگر نمی خواهید به تأیید دو مرحله ای نیاز داشته باشید اما هنوز هم دوست دارید توجه خود را حفظ کنید ، می توانید اعلان های کانتینر را برای دریافت هشدارهای ایمیل در مورد وقایع کانتینر انتخاب خود تنظیم کنید.

به طور دوره ای استفاده از برچسب حسابرسی

یکی از چالش های کار با برچسب ها این است که آنها به مرور زمان جمع می شوند: برچسب ها اضافه می شوند اما بندرت حذف می شوند. برچسب های حسابرسی به صورت دوره ای یکی از راه های معکوس این روند است. فرکانس ایده آل برای انجام این کار بستگی به این دارد که چند بار برچسب های سایت شما به روز می شوند.

برچسب زدن به هر برچسب تا صاحب آشکار باشد ، امکان شناسایی آسان تر چه کسی پاسخگو برای آن برچسب است و می تواند بگوید که آیا هنوز مورد نیاز است یا خیر.

هنگام حسابرسی برچسب ها ، به یاد داشته باشید که محرک ها و متغیرها را تمیز کنید. آنها اغلب می توانند دلیل مشکلات عملکرد باشند.

برای اطلاعات بیشتر ، به نگه داشتن اسکریپت های شخص ثالث کنترل کنید .