صفر تا صد سئو جاوا اسکریپت
رفع اشکالات سئو جاوا اسکریپت
سئو جاوا اسکریپت
جاوا اسکریپت آینده سئو را تحت تاثیر قرار خواهد داد به طوری که بسیاری از دستورات سئو وابسته به جاوا اسکریپت خواهند بود. به زودی تعداد زیادی از وب سایت ها به پلتفرم جاوا اسکریپت انتقال داده می شوند.
سایت Stack Overflow مطالعه ای گسترده روی داده های جمع آوری شده از 100000 برنامه نویس حرفه ای که بیشترشان زبان های برنامه نویسی ، اسکریپت و زبان های نشانه گذاری کار کرده اند انجام داده است: در شکل زیر میتوانید اطلاعاتی درمورد محبوب ترین زبان های برنامه نویسی ببینید. نتیجه ی این تحقیق کاملاً واضح است ، امروزه همه جا صحبت از جاوا اسکریپت است.
در وب سایت جاوا اسکریپت و موتورهای جستجو به هم وابسته اند. پس کاملا مشخص است که بین پیاده سازی موفق و ناموفق جاوااسکریپت تمایز وجود دارد. 10 نکته را در زیر میبینید . این نکات برای جلوگیری از سئوی بد در سایت هستند که برای سایت های خودم یا مشتریانم اتفاق افتاده اند.
1. سرور رندرینگ را فعال کنید (Server Side Rendering SSR)
گوگل در اوایل سال جاری در سیستم Google I / O ، استراتژی را برای خزش ، نمایه سازی و رندر صفحات وب که تا حدودی با روال همیشه تفاوت داشت به اشتراک گذاشت. برای مطالعه بیشتر در این مورد، لینک https://web.dev/javascript-and-google-sea را ببینید.
در نمودار زیر میبینید که یک مسیر جداگانه وجود دارد و همان جایی است که جاوا اسکریپت رندر می شود. برای اطمینان از اینکه گوگل URL ها را برای پردازش و انتقال به صف کراول آماده کند ، باید HTML اولیه ، شامل کلیه عناصر HTML مربوط به سئو باشد. این به معنی حداقل عناصر صفحه اصلی است که در SERP ها و لینکها نشان داده می شوند. آیا این امر همیشه در مورد لینکها درست است؟
گوگل تنظیمات بی شماری را در مورد نحوه بررسی صفحات دارد و نباید فراموش کرد که سئو باعث بهتر دیده شدن می شود. همین موضوع باعث شد که من جدولی منتشر کنم که در مقاله https://www.notprovided.eu/rendering-on-the-web-the-seo-version میتوانید در مورد آن بیشتر بخوانید.
(Side Rendering (SSR تنها راه مطمئن برای انجام این کار است. البته نکات منفی نیز دارد ، اما برای سئو بهتر است انجام دهید. گوگل هر اطلاعاتی که در مورد سایت شما وجود دارد را می بیند و یک صفحه کاملاً بهینه شده را در خزش اولیه ذخیره می کند. فراموش نکنید که حتی پیشرفته ترین موتور جستجو ، یعنی گوگل نیز نمی تواند این مورد را به خوبی ای که باید اداره کند، پس سایر موتورهای جستجو مانند Baidu ، Naver ، Bing etc.etera چطور؟
از آنجا که گوگل آشکارا اعلام می کند که چالش هایی نیز پیش رویش وجود دارد، مجموعه هایی از رندرهای پیشرفته خودکار را به اشتراک گذاشته است. برای استفاده از آن ها شما باید مناسبترین و بهترین سناریو را برای گروه خاصی از کاربرانتان (برای مثال کاربران تلفن همراه با پردازنده های کم توان ) یا رباتها انتخاب کنید.
به عنوان مثال در موارد زیر : زمانی که برای کاربران بیشتری از رندر سمت کاربر استفاده می کنند(البته نه برای مرورگرهای قدیمی و کاربران JS ،و گوشی های کند و …) و همچنین زمانی که نسخه html کاملا رندر شده ی استاتیک را به ربات های موتورهای جستجو یا خزنده های شبکه های اجتماعی ارسال می کنید.
2. ابزارهایی برای چک کردن اینکه موتورهای جستجو چه مواردی را میبینند
از آنجا که اکثر سیستم عامل ها،برای رندرهای داینامیک، امکانات سمت کاربر را کاملا اشغال می کنند ،برخی از تنظیمات با IP مطابقت دارند و ظبق IP باید تغییر کنند. اما من تا حد ممکن SSR را هدف کارم قرار می دهم ، علاوه بر این به خزندگان شبکه های اجتماعی فکر کنید که می خواهند مثلاً برچسب های OpenGraph را ضبط کنند. هدف قرار دادن ترکیبی از IP ها و عوامل سمت کاربر خواسته های شما را پوشش نمی دهد.
بهتر است مبلغ بیشتری را برای سرورهای خود خرج کنید تا HTML رندر شده را حذف کنید و در فرصت های خاص امکانات سیستم عاملتان را از دست ندهید. به عبارتی مقداری از پردازش های خود را برون سپاری کنید تا تمام توان سیستمتان را برای این موارد مصرف نکنید.
مورد بعدی که باید بررسی کنید این است که آیا کاربران ، رباتها و سایر درخواست کنندگان، همان محتوا را دریافت کرده و به سرور میفرستند یا نه. من موردی را مشاهده کرده ام که در آن Googlebot عناوین مختلف ، عناوین H1 و بلوک های محتوا را با توجه به نوع کاربری، ارسال و دریافت می کرد. View Rendered Source یک افزونه خوب Chrome ، است که تفاوت های داده های ارسالی و دریافتی را مستقیما مقایسه می کند.
اگر به دامنه ای در Google Search Console دسترسی دارید ، حتما لازم است از ابزارهای بررسی آن استفاده کنید. در حال حاضر گوگل سرچ کنسول از پایدارترین نسخه Googlebot استفاده می کند (مانند سایر ابزارهای جستجوی Google) . بنابراین نمایانگر آن چیزی است که گوگل واقعاً هنگام خزیدن در سایت ها می بیند. HTML و تصاویرتان را بررسی کنید تا مطمئن شوید که همه عناصر مهم پوشش داده شده و با اطلاعات صحیح همراه هستند.
3. کمترین نیازمندی به پاسخ اولیه HTML
لیست زیر یک لیست ساده از اصول بهینه سازی موتور جستجو است ، اما برای نتایج سئو مهم است. پس به آن ها توجه کنید:
- عنوان و متا تگ ها
- بخشنامه هایی مانند دستورالعمل های نمایه سازی و خزنده
- کلیه محتواهای متنی ، از جمله مجموعه ساختار معنایی عنوان Hx headings
- Markup داده های ساخت یافته
بارگیری تنبل (lazy load) : مطمئناً بهترین روش در بهینه سازی عملکرد لود است اما Googlebot دوست دارد برای مواردی مانند عکس های کوچک جهت SERP موبایل داشته باشد. شما اطمینان حاصل کنید که گوگل بدون نیاز به JavaScript بتواند لینک درستی از شما پیدا کند.
4. ریسک ماندگاری داده ها
Googlebot با یک مرورگر headless صفحات را می خزد، و چیزی را به درخواست URL موفق بعدی منتقل نمی کند. بنابراین برای پر کردن عناصر مهم SEO از کوکی ها ، حافظه محلی یا داده های نشست استفاده نکنید. من نمونه هایی را مشاهده کرده ام که محصولات در صفحات طبقه بندی شخصی سازی شده اند و پیوندهای محصول فقط بر اساس یک کوکی خاص بارگذاری می شود. این کار را انجام ندهید و یا اینکه اگر انجام دادید یک نمره منفی در رتبه بندی کار خود را باید بپذیرید.
5. تست SSR
همه نکاتی که توسعه دهندگان به شما می گویند، ممکن است اشتباه باشد یا نقض شوند. مواردی که به دلیل خرابی شبکه ، میتوانند آفلاین شوند و یا از کار بیفتند. این امر می تواند به دلیل انتشار یک نسخه جدید یا برخی اشکالات ناشناخته باشد که هنگام کار روی موارد کاملاً متفاوت ظاهر می شوند. در زیر مثالی از یک سایت را می بینید که SSR آن خراب شده که این خرابی باعث ایجاد دو هفته مشکل داخلی شد.
اطمینان حاصل کنید که یونیت تست را برای رندر سمت سرور تنظیم کرده اید. تستهای تنظیمات زیر برای استفاده از فریم ورکهای JavaScript پیشنهاد میشود
- تست انگولار و ری اکت: https://jestjs.io/
- Vue تست: https://github.com/vuejs/vue-test-utils
6. رندر توسط شخص ثالث و نظارت بر تنظیمات
علاوه بر اینها رندر میتواند توسط ابزار ثالثی انجام شود. مانند prerender.io که البته بی عیب و نقص نیست، زیرا این ابزارها نیز ممکن است دچار نقص شوند. اگر آمازون زیرساخت های آن ها را قطع کند ،بیشتر رندرکننده هایی که از این طریق استفاده می کنند آفلاین خواهند شد.
از ابزارهای ثالث مانند ContentKing ، Warden Little یا PageModified استفاده کنید. این نکته را نیز در نظر بگیرید که آن ها خودشان میزبان خدماتشان هستند. ( بر خلاف ابزارهایی که آمازون میزبان آن هاست!)
تاکتیک دیگری که می توانید از آن استفاده کنید تا مطمئن شوید گوگل صفحات خالیتان را ایندکس نمی کند این است که شروع به سرویس دهی header 503 ، بارگیری صفحه و ارسال یک سیگنال به محض بارگیری محتوا و به روزرسانی وضعیت هدر کنید. انجام این کار یک تاکتیک است و باید آن را انجام دهید تا رتبه های شما در نتایج گوگل نابود نشود.
7. کارایی: JS را کم کنید
درخواست های JS را کم کنید و اول از همه ، به تجربیات کاربران واقعی فکر کنید. گزارشات ابزار Google Chrome UX یک روش عالی برای نظارت بر عملکرد واقعیتان است. و گوگل می تواند آزادانه از این داده ها استفاده کند تا آن را به الگوریتم های خود منتقل کند.
مؤثرترین نکته استفاده از tree-shaking برای کاهش بایت های جاوا اسکریپتی است که باید بارگذاری شود. علاوه بر این، پاکسازی اسکریپت های شما می تواند باعث سرعت بخشیدن به پردازش شود که این امر به CPU های قدیمی تر و کندتر کمک زیادی می کند. به ویژه برای گوشی های قدیمی تر، می تواند به رضایت کاربر کمک کند.
8. آیا گوگل می تواند تمامی JS ها را لود کند؟
اطمینان حاصل کنید که گزارشات را بررسی و آنالیز می کنید تا ببینید که آیا فایلهای جاوا اسکریپت خطایی ایجاد کرده اند یا خیر. Botify برای این کار با نظارت جداگانه پرونده های استاتیک مناسب است. ترندهای 404 این نکته را نشان می دهد که پرونده ها در لحظه ای که گوگل به آن ها نیاز دارد در دسترس نیستند.
9. از تحلیل های پیش از رندر صرف نظر کنید
مطمئن شوید که هنگام پیش رندر pegeview ها را به آنالیزورهای خود ارسال نمی کنید. راه آسان فقط مسدود کردن همه درخواست ها به ردیابی دامنه است. به همان سادگی که می تواند آن ها را دریافت کند، می توانید آن ها را مسدود کنید. آیا متوجه افزایش ترافیک در این مرحله شدید؟ SSR خود را قبل از گزارش دریافت زیاد ترافیک بررسی کنید.
10. برخی خطرات گسترده تر SSR
از نظر موتورهای جستجو: موتورهای جستجوگر هنوز SSR را دوست ندارند و این موضوع در صورت ارائه سمت سرور ، می تواند به معنی نمایش مطالب متفاوتی در مقایسه با موتورهای جستجو باشد.
ذخیره صفحات ارائه شده به وسیله حافظه کش می تواند مقرون به صرفه باشد اما در مورد تأثیرگذاری آن بر روی دیتابیس های ارسال شده به گوگل فکر کنید: شما نمی خواهید داده های ساخت یافته قدیمی مانند markup محصولات، منسوخ شود. تفاوت های Googlebots Mobile و Desktop را بررسی کنید ، ابزاری مانند SEO Radar می تواند به شما در تشخیص سریع اختلافات بین دو عامل کاربر کمک کند.
منبع : Dev.to | ترجمه : شهرام رهبری