قبل از اینکه به ادامه مطلب برویم، می خواهم توضیح دهم که این یک «تکه ضربه ای» در جاوا اسکریپت نیست. JS ابزار ارزشمندی است.
در حالی که این ایده خوبی نیست که فقط به یک تست مانند این تکیه کنیم، تجربه آنها با من مطابقت دارد. من وب سایت های زیادی را دیده ام و از آن ها پشتیبانی کرده ام که برای عملکرد صحیح بیش از حد به جاوا اسکریپت (JS) تکیه می کنند. انتظار دارم از این نظر تنها نباشم.
این برای ایجاد یک جلوه انیمیشن سرگرم کننده در جایی که محتوای متن به نمایش گذاشته می شود، در نظر گرفته شده است. با این حال، از آنجایی که صفحه بسیار کند در مرورگر رندر می شود، زمانی که محتوای صفحه در نهایت نمایش داده شد، متن از قبل در معرض دید بود.
آن وقت است که "آها!" ضربه لحظه ای زمانی که توسعه دهنده کد را خط به خط در کنسول خود مرور می کرد، متوجه شدم که متن هر صفحه در خارج از ویوپورت با استفاده از یک خط CSS بارگذاری می شود، اما توسط برخی JS به فریم قابل مشاهده کشیده می شود.
من سه حدس در مورد ترافیک و تبدیل آن سایت به شما می دهم و دو مورد اول به حساب نمی آیند!
جایگزین های دیگری که می توانند کمک کنند اما ممکن است به طور کامل چالش های سرعت را حل نکنند، کوچک سازی و فشرده سازی هستند.
چندین مورد از تماس های تلفنی و ایمیل های مشتریان ناامید را به یاد می آورم که می پرسیدند چرا مطالبشان در نتایج جستجو نشان داده نمی شود.
یک تغییر از این ترکیب رندر سمت سرور است که محتوای HTML متن ساده را در حافظه پنهان ذخیره می کند. این می تواند یک راه حل موثر برای محتوای استاتیک یا نیمه استاتیک باشد.
در پایان مهمترین عامل برای آنها مرتبط بودن و مفید بودن محتوا بود.
من حدس زدم که مرحله دوم به پهنای باند و زمان پردازش بیشتری نیاز دارد.
برخی از سازنده ترین بحث هایی که با تیم های توسعه دهنده داشته ام، درباره چند تکه پیتزا بوده است.
برای سایت های موجود، خلاق باشید
من اخیرا مقاله جذاب زیمک بوکو را خواندم، صف رندر: گوگل به 9 برابر بیشتر از HTML برای خزیدن JS به زمان نیاز دارد، در وبلاگ Onely.
اگر سایتی از قبل راه اندازی شده باشد، باید خلاقیت بیشتری به خرج دهید.
کوچک سازی فضاهای خالی بین کاراکترها را حذف می کند و فایل ها را کوچک تر می کند. فشرده سازی GZIP را می توان برای فایل های JS و CSS دانلود شده استفاده کرد.
در عرض یک هفته از راه اندازی سایت جدید، ترافیک جستجوی ارگانیک به صفر رسید و باعث وحشت قابل درک در بین مشتریان شد.
در همان ابتدا که الزامات، مشخصات و اهداف تجاری تعیین می شوند، تلاش کنید تا در فرآیند توسعه وب سایت شرکت کنید.
سایتی که من از آن پشتیبانی می کردم با طراحی کاملاً جدید بر روی پلتفرمی که به شدت به جاوا اسکریپت متکی بود، دوباره راه اندازی شد.
وقتی این مورد را از سمت Core Web Vitals بررسی می کنید، تقریباً 8 ثانیه زمان مسدود شدن را به خود اختصاص می دهد زیرا همه کدها باید دانلود و در مرورگر اجرا شوند.
همانطور که با استفاده از گزارش Coverage در ابزارهای برنامه نویس کروم در آن صفحات جستجو کردم، متوجه شدم که 90٪ از جاوا اسکریپت دانلود شده استفاده نشده است و بیش از 1 مگابایت کد را شامل می شود.
به عنوان مثال، در داستان دوم من، سایت های درگیر نیز تمایل به CSS بیش از حد داشتند که در بیشتر صفحات استفاده نمی شد.
بنابراین، سئو در این شرایط چه کاری باید انجام دهد؟
بخشی از فرآیند آموزش است. تیم های توسعه دهنده اغلب باید از اهمیت سئو مطلع شوند، بنابراین باید به آنها بگویید.
بر اساس روشی که من این توضیح را شنیده ام منطقی به نظر می رسید:
- اولین پاس تمام متن ساده را گرفت.
- برای گرفتن، پردازش و رندر کردن JS به پاس دوم نیاز بود.
نفس خود را کنار بگذارید و سعی کنید مسائل را از دیدگاه تیم های دیگر ببینید.
بهتر است از همان ابتدا سئو را در یک وب سایت ایجاد کنید. هنگامی که یک سایت راه اندازی می شود، تغییر یا به روز رسانی آن برای برآوردن الزامات SEO بسیار پیچیده تر و گران تر است.
همچنین باعث صرفه جویی در هزینه های زیادی در سمت سرور می شود زیرا به جای هر بار درخواست محتوا، صفحات تنها در صورت ایجاد تغییرات یا در یک برنامه منظم ارائه می شوند.
اگر بخواهیم منصفانه باشیم، CSS بیش از حد، تصاویر بسیار بزرگتر از حد مورد نیاز، و پخش خودکار پس زمینه ویدیو نیز می توانند زمان دانلود را کاهش داده و باعث مشکلات نمایه سازی شوند.
یک بررسی سریع نشان داد که علاوه بر اینکه سرعت سایت به طور قابل توجهی کندتر است (به داستان های بعدی مراجعه کنید)، آزمایش صفحه زنده گوگل نشان داد که صفحات خالی هستند.
من از جان مولر گوگل در توییتر پرسیدم که آیا این یک فرض منصفانه است و او پاسخ جالبی داد.
برای مدت طولانی، من معتقد بودم که حداقل بخشی از دلیل کندی گوگل در نمایه سازی محتوای JS، هزینه بالاتر پردازش آن است.
من با توسعه دهنده اصلی سایت ملاقات کردم تا در مورد آنچه در حال رخ دادن است معما کنم. به عنوان بخشی از مکالمه ما، آنها صفحه نمایش خود را به اشتراک گذاشتند تا به من نشان دهند در قسمت پشتی چه اتفاقی می افتد.
جلوه واقعی اسلاید برای کاربران قابل مشاهده نبود. حدس می زدم Google نمی تواند اثر اسلاید را دریافت کند و محتوا را نمی بیند.
درباره نویسنده