وردپرس یه افزونه رسمی به اسم “Speculative Loading” منتشر کرده که از یه تکنولوژی جدید به همین نام استفاده میکنه تا بتونه صفحات سایتت رو خیلی سریعتر بارگذاری کنه.
وردپرس یه پلاگین رسمی جدید زده که از یه تکنولوژی باحال به اسم “بارگذاری حدسی” پشتیبانی میکنه. این تکنولوژی باعث میشه سایتتون سریعتر باز بشه و کاربرها بهتر بتونن تو سایت بچرخن.
بارگذاری حدسی
بذار سادهاش کنم. رندر شدن یعنی کل صفحه وب ساخته بشه تا روی صفحه نمایش داده بشه. مثلا وقتی مرورگر شما کدهای اچ تی املی، عکسها و بقیه چیزایی که لازمه رو دانلود میکنه و همه رو کنار هم قرار میده تا صفحه رو بهت نشون بده، این همون رندر شدن میشه. حالا “پیش-رندر شدن” یعنی این کار (ساختن صفحه) رو تو پشت صحنه انجام بدیم، قبل از اینکه کاربر حتی کلیک کرده باشه.
این پلاگین چیکار میکنه؟ این پلاگین به مرورگر این اجازه رو میده که کل صفحه بعدی که کاربر ممکنه بره توش رو بصورت پیشفرض (تو بکگراند) آماده کنه. اینکارو با حدس زدن صفحه بعدی که کاربر ممکنه بره توش، بر اساس جایی که روشون موس رو نگه میداره انجام میده.
کروم (مرورگر گوگل) یه تنظیم داره که فقط صفحاتی رو پیشفرض آماده میکنه که احتمال اینکه کاربر بهشون بره حداقل ۸۰ درصد باشه. تو صفحه راهنمای رسمی کروم برای پیشفرض آماده کردن صفحه اینطور توضیح داده شده:
“صفحات فقط باید زمانی بصورت پیشفرض آماده بشن که احتمال اینکه کاربر اون صفحه رو باز کنه زیاد باشه. به همین دلیله که گزینههای پیشفرض آماده کردن صفحه تو نوار آدرس کروم فقط زمانی فعال میشن که این احتمال خیلی زیاد باشه (بیشتر از ۸۰ درصد مواقع).”
یه نکتهی دیگه هم تو همون صفحه راهنما برای توسعهدهندهها ذکر شده که اونم اینه که پیشفرض آماده کردن صفحه ممکنه به خاطر تنظیمات کاربر، میزان استفاده از حافظه و شرایط دیگه (جزئیات بیشتر در مورد اینکه آنالیتیکس چطوری با پیشفرض آماده کردن صفحه کار میکنه رو پایینتر توضیح میدیم) اتفاق نیفته.
این قابلیت بارگذاری حدسی یه مشکلی رو حل میکنه که راهحلهای قبلی نمیتونستن حلش کنن. چون راهحلهای قبلی فقط منابعی مثل جاوا اسکریپت و سیاساس رو پیشفرض (تو بکگراند) آماده میکردن، نه کل صفحه رو.
تو اعلامیه رسمی وردپرس اینجوری توضیح داده شده:
معرفی API قوانین بارگذاری حدسی
این API جدید یه راهحل برای مشکلات بالا ارائه میده. این قابلیت به ما اجازه میده تا با استفاده از کد JSON، قوانینی رو تعریف کنیم که بر اساس رفتار کاربر (مثلا هاور کردن روی لینکها)، بصورت پویا (لحظهای) آدرسهای صفحات خاص رو پیشفرض آماده کنه یا منابعشون رو دانلود کنه. به عبارت دیگه، این قابلیت به ما اجازه میده URLها رو قبل از اینکه کاربر روشون کلیک کنه، بصورت حدسی آماده کنیم. این API رو میشه برای مثال برای این استفاده کرد که هر لینکی که کاربر روشون موس رو نگه میداره، کل صفحش بصورت پیشفرض آماده بشه.
صفحه رسمی وردپرس در مورد این قابلیت جدید بیشتر توضیح میده:
“این قابلیت بارگذاری حدسی یه API جدید تحت وب هستش… این قابلیت به ما این امکان رو میده که قوانینی رو با فرمت JSON تعریف کنیم تا بر اساس رفتار کاربر (مثل هاور کردن روی لینکها) بصورت پویا آدرسهای صفحات خاص رو پیشفرض آماده کنه یا منابعشون رو دانلود کنه. به عبارت دیگه، این قابلیت بهمون اجازه میده تا URLها رو قبل از اینکه کاربر روشون کلیک کنه، حدسی آماده کنیم.
مثلا میشه از این API برای این استفاده کرد که هر لینکی که کاربر روشون موس رو نگه میداره، کل صفحش بصورت پیشفرض آماده بشه. همچنین، با این قابلیت بارگذاری حدسی، “پیشفرض آماده کردن” واقعا به معنای آماده کردن کل صفحه، حتی با اجرای کدهای جاوااسکریپت، هستش. این کار میتونه باعث بشه وقتی کاربر روی لینک کلیک میکنه، صفحه تقریبا به صورت آنی (خیلی سریع) لود بشه چون احتمالا کل صفحه از قبل آماده شده. البته این فقط یکی از حالتهای قابل تنظيمه.
این پلاگین جدید وردپرس از این قابلیت بارگذاری حدسی پشتیبانی میکنه. تو صفحات توسعهدهندگان موزیلا، که یه منبع عالی برای درک فنی HTML هستش، این قابلیت به این صورت توضیح داده شده:”
پلاگین آزمایشگاهی عملکرد (Performance Lab Plugin)
این پلاگین جدید توسط تیم رسمی عملکرد وردپرس ساخته شده. این تیم هر چند وقت یه بار پلاگینهای جدیدی رو منتشر میکنه تا کاربرها بتونن اونها رو تست کنن و بعدا شاید این قابلیتها به هسته اصلی وردپرس اضافه بشه. پس این یه فرصت عالیه که بتونین جزو اولین نفرایی باشین که تکنولوژیهای جدید مربوط به عملکرد رو امتحان میکنین.
این پلاگین جدید وردپرس به صورت پیشفرض تنظیم شده که تمام صفحات، نوشتهها و صفحات آرشیو رو که همشون با هم بهشون میگیم “صفحات فرونتاند وردپرس”، بصورت پیشفرض آماده کنه. اینکه این قابلیت چطور کار میکنه رو میشه تو تنظیمات پلاگین دقیقتر کنترلش کرد:
سازگاری با مرورگرها
این قابلیت بارگذاری حدسی از کروم ۱۰۸ به بعد پشتیبانی میشه. اما خب، برای اینکه بتونین از تمام قابلیتهای این پلاگین جدید استفاده کنین، لازمه که مرورگر شما کروم ۱۲۱ یا بالاتر باشه. کروم ۱۲۱ اوایل سال ۲۰۲۴ منتشر شد.
تو مرورگرهایی که از این قابلیت پشتیبانی نمیکنن، این پلاگین کلا نادیده گرفته میشه و هیچ تأثیری روی کاربر نداره.
پلاگین جدید بارگذاری حدسی وردپرس رو امتحان کنید!
این پلاگین توسط تیم اصلی عملکرد هسته وردپرس ساخته شده.
چطور آنالیتیکس با بارگذاری حدسی کار میکنه؟
یه توسعهدهنده وردپرس تو بخش نظرات سوال کرده بود که چطور آنالیتیکس (احتمالا منظور Google Analytics) با بارگذاری حدسی کار میکنه و یه نفر دیگه هم جواب داده که این به عهدهی توسعهدهندهی آنالیتیکس هستش که بارگذاری حدسی رو تشخیص بده و اون رو به عنوان بازدید یا لود صفحه حساب نکنه.
خوشبختانه هم گوگل آنالیتیکس و هم تگهای تبلیغاتی گوگل (GPT) هر دو میتونن از پس بارگذاری حدسی بر بیان. تو صفحه راهنمای توسعهدهندههای کروم یه توضیحی در مورد این موضوع که آنالیتیکس چطور با بارگذاری حدسی کار میکنه، وجود داره:
“از سپتامبر ۲۰۲۳ به صورت پیشفرض، گوگل آنالیتیکس بارگذاری حدسی رو مدیریت میکنه و اون رو تا زمان فعال شدن به تعویق میاندازه. تگهای تبلیغاتی گوگل (GPT) هم از نوامبر ۲۰۲۳ یه تغییر مشابه اعمال کردن و نمایش تبلیغات رو تا زمان فعال شدن به تعویق میاندازن.”
مراقب تداخل با افزونههای مسدودکننده تبلیغات باشین!
چندتا نکته در مورد این پلاگین وجود داره که باید بهشون توجه کنین، به جز اینکه این یه قابلیت آزمایشی هستش که نیازمند کروم ۱۲۱ یا بالاتر داره.
یه توسعهدهنده پلاگین وردپرس تو بخش نظرات گفته که این قابلیت ممکنه با مرورگرهایی که از افزونه مسدودکننده تبلیغات uBlock Origin استفاده میکنن، کار نکنه.