گوگل تگ منیجر |Google Tag Manager

نوشته شده توسط  یکشنبه, 28 شهریور 1395 ساعت 12:19

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال (Rel Canonical) : در این مقاله قصد دارم به آموزش چگونگی ایجاد نگارش کنونیکال URL با استفاده از گوگل تگ منیجر و چگونگی درج آن برای هر صفحه از وب سایت بپردازم . برای آموزش این مبحث ، یک نگارش کنونیکال برای URL های سایت با استفاده از گوگل تگ منیجر ایجاد خواهم کرد .

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

به طور خلاصه ، عوامل مختلفی ممکن است باعث شوند که گوگل نگارش ناخواسته ای از URL صفحات وب سایت ما را ضمیمه کند ، و اغلب این عوامل خارج از کنترل ما هستند :

•    سایت های دیگر که وب سایت ما را با URL دیگری نمایش می دهند (مانند کش خود گوگل و یا سایر موتورهای جست و جو) . به این ترتیب گوگل با استفاده از نگارش کنونیکال همواره می دانید که URL اصلی کدام است .

•    پارامترهایی که به سئو سایت / محتوا مربوط نمی شوند ، مانند فیلترهایی خاص و order sequences .

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

چگونه مقدار داینامیک نگارش کنونیکال URL را تولید کنیم ؟

برای تولید نگارش کنونیکال URL به صورت داینامیک باید آن را به تطابق همیشگی با URL تمیز هر صفحه اجبار کنیم .

به طور خلاصه به یاد داشته باشید که متغیرهای URL که توسط GTM (گوگل تگ منیجر) ایجاد می شوند همواره با مؤلفه های زیر تطابق دارند :

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

ما قصد داریم که برای هر صفحه یک URL منحصر به فرد ایجاد کنیم ، بدون کوئری و فرگمنت . به یک متغیر clean URL نیاز داریم و به دو دلیل نمی توانیم از متغیر built-in {{Page URL}} استفاده کنیم :

1.    اگر چه فرگمنت ها به طور پیش فرض یک بخش از URL ها نیستند ، اما پارامترهای رشته های کوئری چنین هستند .

2.    مواجهه با مشکلاتی با پروتوکل و نام هاست سایت ، اگر گزینه های دیگری نیز اعمال شوند (مانند SSL ، www ، ...) .

بنابراین ، باید پروتوکل + هاست + مسیر صفحه را در یک متغیر واحد قرار دهیم .

حال قدم به قدم به بررسی چگونگی ایجاد متغیر {{Page URL Canonical}} خواهیم پرداخت .

ساختن {{Page Protocol}} برای کامپایل کردن آن بخش از URL که مشخص می کند پروتوکل سایت http:// یا https:// است

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

توجه : در این قسمت فرض بر این است که تمام دامنه وب سایت تحت یک پروتوکل واحد قرار دارد .

ایجاد {{Page Hostname Canonical}}

ما به یک متغیر نیاز داریم که همواره منحصرا  نام هاست را در خود داشته باشد ، چه با www در بروزر وارد شود چه بدون آن . کنونیکال نام هاست همواره باید یکسان باشد ، بدون در نظر داشتن اینکه دارای www می باشد یا نه .

چگونه دامنه کنونیکال را ایجاد کنیم ؟

راهکار اول : تغییر مسیر دامنه دارای www به دامنه بدون www توسط 301 Redirect

در اینصورت URL کنونیکال ما بدون www. می باشد . نیاز داریم که {{Page Hostname}} را ایجاد کنیم ، اما باید دقت داشته باشیم که www. اول آن را حذف کنیم :

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

راهکار دوم : تغییر مسیر دامنه بدون www به دامنه دارای www توسط 301 Redirect

در این حالت URL کنونیکال دارای www می باشد . ما باید {{Page Hostname}} را بدون www ایجاد کنیم ، و سپس www را توسط یک متغیر ثابت به اول آن درج کنیم :

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

فعال کردن متغیر built-in {{Page Path}}

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

ایجاد {{Page URL Canonical}}

سه متغیری که ایجاد کردیم را به یک دیگر متصل کنید تا یک متغیر ثابت را تشکیل دهید :

{{Page Protocol}}://{{Page Hostname Canonical}}{{Page Path}}

خلاصه ای از روش تشکیل نگارش کنونیکال URL :

1.    پروتوکل : مقدار http یا https بدون :// را برمی گرداند ، به همین دلیل باید آن را به طور دستی می ساختیم .

2.    نام هاست : می توانیم با www و یا بدون www آن را ایجاد کنیم .

3.    مسیر : مقدار آن از / شروع می شود . شامل کوئری نمی باشد ، پس بسیار مناسب است . برای ایجاد آن از متغیر built-in {{Page Path}} استفاده می کنیم .

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

چطور می توان با استفاده گوگل تگ منیجر ، نگارش کنونیکال را در یک صفحه درج کرد ؟

فرض کنیم URL کنونیکال را توسط GTM به صورت داینامیک تولید کردیم : {{Page URL Canonical}} .

حال باید ببینیم که چگونه می توانیم آن را توسط یک تگ GTM برای صفحات درج کنیم . البته باید تاکید کنم که این راه حل ایده آل نیست و همیشه ترجیح بر این است که لینک ها را در <head> قرار دهیم ، اما تجربه نشان داده است که با درج کردن آن توسط GTM نیز لینک عمل می کند .

اگر می توانستیم مستقیما توسط GTM محتوا را در <head> قرار دهیم ، تنها با اضافه کردن تگ زیر مسئله حل می شد :

</{link href=”{{Page URL Canonical}>

اما ما می دانیم که محتوای درج شده در تگ های HTML همیشه در انتهای <body> خوانده می شوند ، پس بنابراین گوگل تگ لینک ما را نخواهد خواند . در نتیجه می توانیم هنگام طراحی سایت با استفاده از تکه کد جاوااسکریپت زیر ، تگ را تولید کرده و در <head> درج کنیم :

<script>
 var c = document.createElement('link')
 .c
 c.href = {{Page URL Canonical}}
 document.head.appendChild(c)
</script>

و در آخر نیز آن را برای تمام صفحات فعال می کنیم :

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

چگونه بررسی کنیم که آیا نگارش کنونیکال به درستی عمل می کند یا نه ؟

بسیار ساده است : بررسی کنید که آیا کد مد نظر در صفحه وجود دارد یا نه . کافیست نوار ابزار (Developer Tools) بروزر خود را باز کنید و صفحه را بررسی (Inspect) کنید . برای اینکار ، در بروزر خود :

1.    دکمه F12 را فشار دهید .

2.    بر روی اولین تب کنسول کلیک کنید (در firefox ، نام آن Inspector است و در Chrome ، Elements) .

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

3.    Ctrl+F را بزنید و عبارت "Canonical" را جست و جو کنید .

4.    اگر تگ link کنونیکال را در انتهای <head> مشاهده کردید ، پس کد مد نظر شما به درستی تولید شده است وعمل می کند .

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical URL)

به همین راحتی !

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال URL (Rel Canonical)

روش استفاده از گوگل تگ منیجر (Google Tag Manager) برای تولید و درج نگارش کنونیکال (Rel Canonical) : در این مقاله قصد دارم به آموزش چگونگی ایجاد نگارش کنونیکال URL با استفاده از گوگل تگ منیجر و چگونگی درج آن برای هر صفحه از وب سایت بپردازم . برای آموزش این مبحث ، یک نگارش کنونیکال برای URL های سایت با استفاده از گوگل تگ منیجر ایجاد خواهم کرد .

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

به طور خلاصه ، عوامل مختلفی ممکن است باعث شوند که گوگل نگارش ناخواسته ای از URL صفحات وب سایت ما را ضمیمه کند ، و اغلب این عوامل خارج از کنترل ما هستند :

·        سایت های دیگر که وب سایت ما را با URL دیگری نمایش می دهند (مانند کش خود گوگل و یا سایر موتورهای جست و جو) . به این ترتیب گوگل با استفاده از نگارش کنونیکال همواره می دانید که URL اصلی کدام است .

·        پارامترهایی که به سئو / محتوا مربوط نمی شوند ، مانند فیلترهایی خاص و order sequences .

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

چگونه مقدار داینامیک نگارش کنونیکال URL را تولید کنیم ؟

برای تولید نگارش کنونیکال URL به صورت داینامیک باید آن را به تطابق همیشگی با URL تمیز هر صفحه اجبار کنیم .

به طور خلاصه به یاد داشته باشید که متغیرهای URL که توسط GTM (گوگل تگ منیجر) ایجاد می شوند همواره با مؤلفه های زیر تطابق دارند :

عکس

ما قصد داریم که برای هر صفحه یک URL منحصر به فرد ایجاد کنیم ، بدون کوئری و فرگمنت . به یک متغیر clean URL نیاز داریم و به دو دلیل نمی توانیم از متغیر built-in {{Page URL}} استفاده کنیم :

1.     اگر چه فرگمنت ها به طور پیش فرض یک بخش از URL ها نیستند ، اما پارامترهای رشته های کوئری چنین هستند .

2.     مواجهه با مشکلاتی با پروتوکل و نام هاست سایت ، اگر گزینه های دیگری نیز اعمال شوند (مانند SSL ، www ، ...) .

بنابراین ، باید پروتوکل + هاست + مسیر صفحه را در یک متغیر واحد قرار دهیم .

حال قدم به قدم به بررسی چگونگی ایجاد متغیر {{Page URL Canonical}} خواهیم پرداخت .

ساختن {{Page Protocol}} برای کامپایل کردن آن بخش از URL که مشخص می کند پروتوکل سایت http:// یا https:// است

عکس

توجه : در این قسمت فرض بر این است که تمام دامنه وب سایت تحت یک پروتوکل واحد قرار دارد .

ایجاد {{Page Hostname Canonical}}

ما به یک متغیر نیاز داریم که همواره منحصرا  نام هاست را در خود داشته باشد ، چه با www در بروزر وارد شود چه بدون آن . کنونیکال نام هاست همواره باید یکسان باشد ، بدون در نظر داشتن اینکه دارای www می باشد یا نه .

چگونه دامنه کنونیکال را ایجاد کنیم ؟

راهکار اول : تغییر مسیر دامنه دارای www به دامنه بدون www توسط 301 Redirect

در اینصورت URL کنونیکال ما بدون www. می باشد . نیاز داریم که {{Page Hostname}} را ایجاد کنیم ، اما باید دقت داشته باشیم که www. اول آن را حذف کنیم :

عکس

راهکار دوم : تغییر مسیر دامنه بدون www به دامنه دارای www توسط 301 Redirect

در این حالت URL کنونیکال دارای www می باشد . ما باید {{Page Hostname}} را بدون www ایجاد کنیم ، و سپس www را توسط یک متغیر ثابت به اول آن درج کنیم :

عکس

فعال کردن متغیر built-in {{Page Path}}

عکس

ایجاد {{Page URL Canonical}}

سه متغیری که ایجاد کردیم را به یک دیگر متصل کنید تا یک متغیر ثابت را تشکیل دهید :

{{Page Protocol}}://{{Page Hostname Canonical}}{{Page Path}}

خلاصه ای از روش تشکیل نگارش کنونیکال URL :

1.     پروتوکل : مقدار http یا https بدون :// را برمی گرداند ، به همین دلیل باید آن را به طور دستی می ساختیم .

2.     نام هاست : می توانیم با www و یا بدون www آن را ایجاد کنیم .

3.     مسیر : مقدار آن از / شروع می شود . شامل کوئری نمی باشد ، پس بسیار مناسب است . برای ایجاد آن از متغیر built-in {{Page Path}} استفاده می کنیم .

عکس

چطور می توان با استفاده گوگل تگ منیجر ، نگارش کنونیکال را در یک صفحه درج کرد ؟

فرض کنیم URL کنونیکال را توسط GTM به صورت داینامیک تولید کردیم : {{Page URL Canonical}} .

حال باید ببینیم که چگونه می توانیم آن را توسط یک تگ GTM برای صفحات درج کنیم . البته باید تاکید کنم که این راه حل ایده آل نیست و همیشه ترجیح بر این است که لینک ها را در <head> قرار دهیم ، اما تجربه نشان داده است که با درج کردن آن توسط GTM نیز لینک عمل می کند .

اگر می توانستیم مستقیما توسط GTM محتوا را در <head> قرار دهیم ، تنها با اضافه کردن تگ زیر مسئله حل می شد :

<link href=”{{Page URL Canonical}}” />

اما ما می دانیم که محتوای درج شده در تگ های HTML همیشه در انتهای <body> خوانده می شوند ، پس بنابراین گوگل تگ لینک ما را نخواهد خواند .

در نتیجه می توانیم با استفاده از تکه کد جاوااسکریپت زیر ، تگ را تولید کرده و در <head> درج کنیم :

<script>
 var c = document.createElement('link'); 
 c.; 
 c.href = {{Page URL Canonical}}; 
 document.head.appendChild(c);
</script>

و در آخر نیز آن را برای تمام صفحات فعال می کنیم :

عکس

چگونه بررسی کنیم که آیا نگارش کنونیکال به درستی عمل می کند یا نه ؟

بسیار ساده است : بررسی کنید که آیا کد مد نظر در صفحه وجود دارد یا نه .

کافیست نوار ابزار (Developer Tools) بروزر خود را باز کنید و صفحه را بررسی (Inspect) کنید . برای اینکار ، در بروزر خود :

1.     دکمه F12 را فشار دهید .

2.     بر روی اولین تب کنسول کلیک کنید (در firefox ، نام آن Inspector است و در Chrome ، Elements) .

عکس

3.     Ctrl+F را بزنید و عبارت "Canonical" را جست و جو کنید .

4.     اگر تگ link کنونیکال را در انتهای <head> مشاهده کردید ، پس کد مد نظر شما به درستی تولید شده است وعمل می کند .

عکس

به همین راحتی ! J

 

Save

Save

Save

 
 

Save

آخرین ویرایش در یکشنبه, 28 شهریور 1395 ساعت 18:53