Core Web Vitals برای فروشگاههای آنلاین: توضیح LCP، INP و CLS
LCP، INP و CLS چه چیزی را میسنجند، آستانههای خوب و ضعیف در صدک 75، تفاوت داده آزمایشگاهی و میدانی و راهحلهای رایج در فروشگاههای Shopify و WooCommerce.
تیم تحریریه FixReports13 دقیقه مطالعه
Core Web Vitals (معیارهای حیاتی وب) سه معیار گوگل هستند که تجربه بازدیدکنندگان واقعی از یک صفحه را توصیف میکنند: Largest Contentful Paint (LCP) برای بارگذاری، Interaction to Next Paint (INP) برای پاسخگویی و Cumulative Layout Shift (CLS) برای پایداری بصری. یک صفحه زمانی قبول میشود که دستکم 75 درصد بازدیدها در محدوده «خوب» باشند: LCP حداکثر 2.5 ثانیه، INP حداکثر 200 میلیثانیه و CLS برابر 0.1 یا کمتر، که برای موبایل و دسکتاپ جداگانه سنجیده میشود. در فروشگاههای آنلاین، نمرههای ردشده معمولاً به تصاویر بزرگ یا تنبلبارگذاریشده (lazy load) در بخش هیرو و صفحه محصول، اسکریپتهای اپلیکیشنها و ردیابی، فونتهای وب و بنرها یا ابزارکهای نقد و نظری برمیگردد که پس از نمایش صفحه، محتوا را به پایین هل میدهند.
نکات کلیدی
- وضعیت خوب، نیازمند بهبود و ضعیف در صدک 75 بارگذاریهای صفحه سنجیده میشود: LCP بیش از 4 ثانیه، INP بیش از 500 ms و CLS بیش از 0.25 ضعیف به شمار میآیند (web.dev (در زبانه جدید باز میشود)).
- INP در 12 مارس 2024 جای First Input Delay (FID) را بهعنوان یکی از Core Web Vitals گرفت (web.dev (در زبانه جدید باز میشود)).
- دادههای میدانی Chrome UX Report یک میانگین متحرک 28 روزه است و Chrome در iOS را شامل نمیشود (Chrome for Developers (در زبانه جدید باز میشود)).
- فیلتر
image_tagدر Shopify تصاویر سه بخش (section) نخست یک قالب را بهصورت فوری (eager) و از بخش چهارم به بعد را بهصورت تنبل (lazy) بارگذاری میکند، مگر اینکه این رفتار را تغییر دهید (Shopify (در زبانه جدید باز میشود)). - از WordPress 6.3 به بعد، هسته وردپرس
fetchpriority="high"را به تصویری اضافه میکند که به احتمال زیاد عنصر LCP است (Make WordPress Core (در زبانه جدید باز میشود)).
آستانههای Core Web Vitals چیست؟
یک صفحه زمانی Core Web Vitals را رعایت میکند که صدک 75 بارگذاریهایش در هر سه معیار در محدوده خوب باشد.
| معیار | چه چیزی را میسنجد | خوب | نیازمند بهبود | ضعیف |
|---|---|---|---|---|
| LCP | زمان تا رندر شدن بزرگترین تصویر، ویدئو یا بلوک متنی در ناحیه دید (viewport) | 2.5 s یا کمتر | بیش از 2.5 s تا 4.0 s | بیش از 4.0 s |
| INP | زمان از کلیک، لمس یا فشردن کلید تا ترسیم فریم بعدی | 200 ms یا کمتر | بیش از 200 ms تا 500 ms | بیش از 500 ms |
| CLS | میزان جابهجایی غیرمنتظره محتوای قابل مشاهده | 0.1 یا کمتر | بیش از 0.1 تا 0.25 | بیش از 0.25 |
آستانهها از راهنماهای LCP (در زبانه جدید باز میشود)، INP (در زبانه جدید باز میشود) و CLS (در زبانه جدید باز میشود) در web.dev، به وضعیت اکتبر 2026، گرفته شدهاند.
صدک 75 یعنی نتیجه، تجربه بیشتر بازدیدکنندگان را بازتاب میدهد، نه فقط سریعترین آنها را، و گوگل موبایل و دسکتاپ را جداگانه بررسی میکند (در زبانه جدید باز میشود). PageSpeed Insights صفحهای را قبول میکند که هر سه معیارش خوب باشد؛ اگر داده کافی برای INP وجود نداشته باشد، فقط LCP و CLS را ارزیابی میکند (مستندات PageSpeed Insights (در زبانه جدید باز میشود)). گوگل میگوید Core Web Vitals پایدار حداکثر سالی یک بار تغییر میکنند.
در فروشگاه، عنصر LCP اغلب بنر هیرو یا تصویر اصلی محصول است و به همین دلیل نحوه مدیریت تصاویر اینقدر اهمیت دارد.
چرا INP در مارس 2024 جای FID را گرفت؟
INP جای FID را گرفت، چون FID فقط اولین تعامل و فقط بخشی از تأخیر آن را میسنجید، در حالی که INP تعاملات کل بازدید را بررسی میکند.
گوگل در مه 2023 اعلام کرد که INP به یکی از Core Web Vitals تبدیل میشود و این تغییر از 12 مارس 2024 (در زبانه جدید باز میشود) اجرایی شد. FID فقط اولین تعامل را گزارش میکرد، آن هم فقط تأخیر ورودی آن را، نه زمان صرفشده برای اجرای کنترلکنندههای رویداد (event handler) یا ترسیم نتیجه. INP کلیکها، لمسها و فشردن کلیدها را در طول کل بازدید زیر نظر میگیرد و طولانیترین آنها را، با نادیده گرفتن موارد پرت، گزارش میکند؛ اسکرول و نگه داشتن نشانگر ماوس روی عناصر (hover) حساب نمیشوند. کاربران APIهای CrUX و PageSpeed Insights تا 9 سپتامبر 2024 فرصت داشتند تا به معیار جدید منتقل شوند (web.dev (در زبانه جدید باز میشود)).
هر تعامل سه بخش دارد: تأخیر ورودی (انتظار برای اسکریپتهای مشغول)، مدت پردازش (اجرای کنترلکنندهها) و تأخیر نمایش (ترسیم فریم بعدی) (web.dev (در زبانه جدید باز میشود)).
در فروشگاه، این تعاملات شامل انتخابگر گونه محصول (variant)، دکمههای تعداد، افزودن به سبد خرید، کشوی سبد خرید، فیلترها و منوها هستند. یک صفحه ممکن بود با یک لمس سریع اول، FID را با موفقیت بگذراند و باز هم وقتی کسی بعداً فیلترها را باز میکند، کند به نظر برسد.
تفاوت دادههای آزمایشگاهی و دادههای میدانی چیست؟
دادههای آزمایشگاهی از یک آزمون در شرایط ثابت به دست میآیند، در حالی که دادههای میدانی در طول زمان از بازدیدکنندگان واقعی جمعآوری میشوند، و گوگل توصیه میکند برای تعیین اولویت اصلاحات از دادههای میدانی استفاده کنید (web.dev (در زبانه جدید باز میشود)).
| دادههای آزمایشگاهی | دادههای میدانی | |
|---|---|---|
| منبع | یک بارگذاری شبیهسازیشده صفحه (Lighthouse، Chrome DevTools، بخش آزمایشگاهی PageSpeed Insights) | بازدیدکنندگان واقعی Chrome (Chrome UX Report)، یا سامانه پایش کاربران واقعی (RUM) خودتان |
| شرایط | دستگاه و شبکه ثابت. آزمون پیشفرض موبایل Lighthouse (در زبانه جدید باز میشود) از پروفایل «Slow 4G» (رفتوبرگشت 150 ms، سرعت دانلود 1.6 Mbps) و کندسازی 4x برای CPU استفاده میکند | هر دستگاه، شبکه و موقعیتی که بازدیدکنندگان شما دارند |
| INP | در یک بارگذاری ساده صفحه سنجیده نمیشود. Total Blocking Time (TBT) جایگزین تقریبی آن است | از تعاملات واقعی سنجیده میشود |
| مناسب برای | اشکالزدایی و بررسی یک تغییر پیش از انتشار | دانستن آنچه بازدیدکنندگان واقعاً تجربه میکنند |
TBT بخشی از هر کار (task) رشته اصلی (main thread) را که از 50 ms فراتر میرود جمع میزند؛ web.dev مقدار کمتر از 200 ms را روی سختافزار موبایل متوسط پیشنهاد میکند، اما میگوید این معیار جایگزین INP نیست (web.dev (در زبانه جدید باز میشود)).
سه نکته درباره Chrome UX Report (CrUX) برای فروشگاهها اهمیت دارد:
- این گزارش یک میانگین متحرک 28 روزه (در زبانه جدید باز میشود) است که روزانه بهروز میشود.
- Chrome دسکتاپ و Android را برای کاربرانی پوشش میدهد که شرایط گزارشدهی Chrome را دارند. Chrome در iOS مستثناست، بنابراین فروشگاهی که بیشتر خریدارانش از iPhone استفاده میکنند، داده میدانی را فقط از بخشی از مخاطبانش میبیند (روششناسی (در زبانه جدید باز میشود)).
- صفحهها و منشأها (origin) فقط زمانی نمایش داده میشوند که بهطور عمومی قابل کشف و به اندازه کافی پربازدید باشند، بنابراین ممکن است فروشگاهی کمبازدید فقط داده در سطح منشأ داشته باشد یا اصلاً دادهای نداشته باشد.
داشبورد عملکرد وب (در زبانه جدید باز میشود) در Shopify نیز LCP، INP و CLS کاربران واقعی را در صدک 75 گزارش میکند، اما برای 30 روز بهجای 28 روز، پس انتظار تفاوتهایی با CrUX را داشته باشید.
چه چیزی LCP را در صفحههای فروشگاه کند میکند؟
LCP در فروشگاهها معمولاً به این دلیل کند است که تصویر اصلی بیش از حد سنگین است، دیر کشف میشود یا عمداً با بارگذاری تنبل یا یک انیمیشن به تأخیر میافتد.
- بارگذاری تنبل تصویر LCP. web.dev میگوید هرگز این کار را نکنید (web.dev (در زبانه جدید باز میشود)). تحلیل آن از صفحههای WordPress نشان داد که LCP در صدک 75 در سایتهایی که از بارگذاری تنبل بومی (native) استفاده میکنند کندتر است و بارگذاری نکردن تنبل تصاویر بالای صفحه (above the fold) این افت را برطرف کرد (web.dev (در زبانه جدید باز میشود)).
- تصویری که دیر پیدا میشود. تصویر هیرویی که بهصورت
background-imageدر CSS تعریف شده یا با اسکریپت یک اسلایدر تزریق میشود، در HTMLای که مرورگر ابتدا بررسی میکند وجود ندارد. Shopify توصیه میکند برای محتوای هیرو از پسزمینه CSS و برای تصویر LCP از جلوههای ظاهرشدن تدریجی (fade-in) استفاده نکنید (Shopify (در زبانه جدید باز میشود)). - اولویت پایین. تصاویر تا کامل شدن چیدمان (layout) با اولویت پایین بارگذاری میشوند، بنابراین Shopify استفاده از
fetchpriority="high"را روی تصویر LCP توصیه میکند (Shopify (در زبانه جدید باز میشود)). web.dev یادآوری میکند که تنظیم آن روی بیش از یک یا دو تصویر، از فایدهاش میکاهد (web.dev (در زبانه جدید باز میشود)). - CSS و اسکریپتهای مسدودکننده رندر. شیوهنامههای (stylesheet) بزرگ و اسکریپتهای همگام در
<head>حتی پس از رسیدن تصویر، رندر را به تأخیر میاندازند (web.dev (در زبانه جدید باز میشود)). - حجم فایل و فونتها. از فرمتهای مدرن،
srcsetوsizesو یک CDN استفاده کنید. برای فونتهای وب، مقداری بهجزautoیاblockبرایfont-displayبه کار ببرید.
<!-- Main product image: real src in the HTML, eager, high priority -->
<img src="/images/linen-shirt-1200.webp"
srcset="/images/linen-shirt-600.webp 600w, /images/linen-shirt-1200.webp 1200w"
sizes="(min-width: 990px) 50vw, 100vw"
width="1200" height="1500"
fetchpriority="high"
alt="Natural linen shirt, front view">
<!-- Gallery images below the first screen: lazy -->
<img src="/images/linen-shirt-back-600.webp" loading="lazy"
width="600" height="750" alt="Natural linen shirt, back view">
چه چیزی INP را در صفحههای فروشگاه کند میکند؟
INP کند در فروشگاهها معمولاً یعنی JavaScript بیش از حد روی رشته اصلی، که بخش زیادی از آن از اپلیکیشنها، تگهای ردیابی و امکانات قالب میآید، و در نتیجه لمسها باید منتظر بمانند.
اگر خریدار در حالی روی «افزودن به سبد خرید» بزند که اسکریپتهای نقد و نظر، گفتوگوی آنلاین و تحلیل آماری هنوز در حال اجرا هستند، آن لمس باید منتظر بماند. انتخابگر گونهای که کل فرم محصول را دوباره رندر میکند، زمان پردازش را بیشتر میکند. مگامنوهای بسیار بزرگ و شبکههای مجموعه با تعداد زیادی نمونه رنگ (swatch) تأخیر نمایش را افزایش میدهند.
web.dev توصیه میکند کارهای طولانی را به کارهای کوچکتر بشکنید و کنترل را به رشته اصلی برگردانید (yield)، ابتدا صفحه را بهروز کنید و بقیه کارها را به تعویق بیندازید، و DOM را کوچکتر نگه دارید (web.dev (در زبانه جدید باز میشود)). Shopify گامهایی مخصوص فروشگاهها اضافه میکند: همه اپلیکیشنها، پیکسلها و اسکریپتهای قالب را ممیزی کنید، آنچه را حیاتی نیست به تعویق بیندازید، امکانات را هنگام تعامل بارگذاری کنید و وقتی هیچ آزمون A/B در حال اجرا نیست، قطعهکدهای ضدچشمک (anti-flicker) آن را خاموش کنید (Shopify (در زبانه جدید باز میشود)).
چه چیزی باعث جابهجایی چیدمان در صفحههای محصول و مجموعه میشود؟
جابهجاییهای چیدمان در فروشگاهها بیشتر از محتوایی ناشی میشود که پس از نخستین رندر ظاهر میشود یا اندازهاش تغییر میکند: تصاویر بدون ابعاد، نوارهای اطلاعرسانی و کوکی، ابزارکهای نقد و نظر، بلوکهای اپلیکیشن و تعویض فونت.
web.dev علتهای رایج را اینها میداند: رسانه با ابعاد نامشخص، محتوایی که بالای محتوای موجود اضافه میشود، ابزارکهای شخص ثالثی که اندازه خود را تغییر میدهند، و فونتهای وبی که اندازهشان با فونت جایگزین (fallback) فرق دارد (web.dev (در زبانه جدید باز میشود)). در فروشگاهها این یعنی نوار ارسال رایگانی که در بالای صفحه درج میشود، امتیاز ستارهای که پس از عنوان بارگذاری میشود، پیام پرداخت اقساطی زیر قیمت و اسلایدرهای (carousel) پیشنهاد محصول. Shopify یادآوری میکند که محتوای پاپآپ هم میتواند باعث جابهجایی شود (Shopify (در زبانه جدید باز میشود)).
جابهجاییهایی که تا 500 ms پس از ورودی کاربر رخ میدهند حساب نمیشوند، اما جابهجاییهای هنگام اسکرول حساب میشوند و ابزارهای آزمایشگاهی اغلب آنها را نمیبینند (web.dev (در زبانه جدید باز میشود)). به تصاویر width و height یا aspect-ratio در CSS بدهید، برای ابزارکها فضا رزرو کنید، بنرها را بهصورت لایه رویی (overlay) نمایش دهید، جابهجایی ناشی از تعویض فونت را با size-adjust کاهش دهید و انیمیشنها را بهجای top یا left با transform بسازید.
/* Reserve space for a reviews summary that loads after the page */
.product-reviews-summary { min-height: 24px; }
/* Keep product cards from jumping while images load */
.product-card img { width: 100%; height: auto; aspect-ratio: 4 / 5; }
چگونه Core Web Vitals را در Shopify بهبود دهیم؟
در Shopify، بیشترین بهبود از بارگذاری فوری اولین تصویر با اولویت بالا، کم کردن اسکریپتهای اپلیکیشنها و بررسی نتیجه در گزارشهای عملکرد وب در پنل مدیریت به دست میآید.
دادهها را در پنل مدیریت بررسی کنید
خلاصهای در صفحه Online Store > Themes نمایش داده میشود و گزارشهای کامل LCP، INP و CLS در Analytics > Reports قرار دارند. دادهها ممکن است تا 36 ساعت تأخیر داشته باشند و حالت خصوصی (private mode) باید خاموش باشد (مرکز راهنمای Shopify (در زبانه جدید باز میشود)).
بارگذاری تصاویر را در Liquid کنترل کنید
فیلتر image_tag تصاویر بخشهای پایینتر صفحه را بهصورت تنبل بارگذاری میکند، مگر اینکه preload را تنظیم کنید (مرجع image_tag (در زبانه جدید باز میشود)): فوری برای بخشهای 1 تا 3 و تنبل از بخش 4 به بعد. چون section.index در ویرایشگر قالب برابر nil است، در شرط بهجای <= 3 از > 3 استفاده کنید:
{%- if section.index == 1 -%}
{{ section.settings.image | image_url: width: 1600 | image_tag: loading: 'eager', fetchpriority: 'high', widths: '600, 900, 1200, 1600', sizes: '100vw' }}
{%- elsif section.index > 3 -%}
{{ section.settings.image | image_url: width: 1600 | image_tag: loading: 'lazy', sizes: '100vw' }}
{%- else -%}
{{ section.settings.image | image_url: width: 1600 | image_tag: sizes: '100vw' }}
{%- endif -%}
در شبکههای محصول، Shopify پیشنهاد میکند فقط چند کارت اول بهصورت فوری بارگذاری شوند (برای مثال forloop.index <= 4) (Shopify (در زبانه جدید باز میشود)). از preload: true با احتیاط استفاده کنید؛ Shopify توصیه میکند فقط یک یا دو منبعی را که دیر کشف میشوند پیشبارگذاری کنید.
آنچه اپلیکیشنها به جا میگذارند حذف کنید
جاسازیهای بلااستفاده اپلیکیشنها (app embeds) را از مسیر Online Store > Edit theme > App embeds خاموش کنید (مرکز راهنمای Shopify (در زبانه جدید باز میشود)). حذف یک اپلیکیشن، بلوکهای آن را هم حذف میکند، اما اپلیکیشنهایی که فایلهای قالب را مستقیماً ویرایش کردهاند ممکن است «کد شبح» (ghost code) به جا بگذارند که به گفته Shopify میتواند مشکلات کیفیت و عملکرد ایجاد کند (Shopify (در زبانه جدید باز میشود)). Shopify همچنین میگوید تگهای اسکریپت (script tags) از 1 مارس 2027 دیگر اجرا نمیشوند. برای فونتها، Shopify استفاده از CDN خودش یا فونتهای سیستمی را به سرویسهای فونت خارجی ترجیح میدهد (Shopify (در زبانه جدید باز میشود)).
چگونه Core Web Vitals را در WooCommerce بهبود دهیم؟
در WooCommerce مطمئن شوید افزونهها اولویتبندی تصاویر WordPress را لغو نمیکنند، همهچیز بهجز سبد خرید و تسویه حساب را کش کنید و اسکریپتهایی را که بیدلیل در همه صفحهها بارگذاری میشوند حذف کنید.
- مدیریت تصاویر هسته را حفظ کنید. از WordPress 6.3 (منتشرشده در 8 اوت 2023)، هسته وردپرس
fetchpriority="high"را به تصویری که احتمالاً LCP است (بهطور پیشفرض دستکم 50,000 پیکسل مربع) اضافه میکند و بارگذاری تنبل را برای سه تصویر محتوایی نخست اعمال نمیکند (Make WordPress Core (در زبانه جدید باز میشود)). اگر یک افزونه بهینهسازی، بارگذاری تنبل خودش را اضافه میکند، بررسی کنید که تصویر هیرو و تصویر اصلی محصول را مستثنا کند. - صفحهها را کش کنید، نه سبد خرید را. راهنمای WooCommerce کش صفحه در سطح سرور یا با افزونه و استفاده از CDN را توصیه میکند، در حالی که صفحههای سبد خرید و تسویه حساب نباید کش شوند (مستندات توسعهدهندگان WooCommerce (در زبانه جدید باز میشود)).
- cart fragments را بررسی کنید. از WooCommerce 7.8، اسکریپت cart fragments فقط در جایی بارگذاری میشود که ابزارک Cart وجود داشته باشد، اما برخی قالبها این ابزارک را بهصورت ثابت در کد گنجاندهاند. بلوک Mini-Cart از cart fragments استفاده نمیکند (وبلاگ توسعهدهندگان WooCommerce (در زبانه جدید باز میشود)).
- افزونههای سنگین را پیدا کنید. WooCommerce برای پیدا کردن افزونههای کند، Query Monitor را پیشنهاد میکند و توصیه میکند JavaScript غیرحیاتی را به تعویق بیندازید.
اگر چیدمان شما بیش از سه تصویر را در بالای صفحه (above the fold) نشان میدهد، میتوانید آستانه WordPress را افزایش دهید:
// functions.php: skip lazy loading for the first 4 content images (default is 3)
add_filter( 'wp_omit_loading_attr_threshold', function () {
return 4;
} );
چقدر طول میکشد تا اثر اصلاحات دیده شود؟
آزمونهای آزمایشگاهی اثر یک اصلاح را بلافاصله نشان میدهند، اما دادههای میدانی تا حدود چهار هفته زمان لازم دارند تا آن را بهطور کامل بازتاب دهند، چون CrUX میانگین 28 روز گذشته را محاسبه میکند.
آزمون آزمایشگاهی را پیش و پس از هر تغییر چند بار اجرا کنید، چون نتایج یک اجرای منفرد متغیر است، سپس اعداد میدانی را در PageSpeed Insights، گزارش Core Web Vitals در Search Console یا گزارشهای Shopify دنبال کنید. یک اسکن رایگان در حدود یک دقیقه، نخستین ارزیابی را به شما میدهد. گزارش عملکرد یک آزمون آزمایشگاهی موبایل با محدودسازی (slow 4G، کندسازی 4x برای CPU) اجرا میکند و دادههای میدانی Chrome UX Report را هم اضافه میکند، از جمله INP، اگر گوگل داده کافی برای فروشگاه شما داشته باشد.
پرسشهای متداول
آیا Core Web Vitals بر رتبهبندی گوگل اثر دارند؟
گوگل میگوید سیستمهای رتبهبندیاش از Core Web Vitals استفاده میکنند، اما نمرههای خوب رتبههای برتر را تضمین نمیکنند و گوگل حتی وقتی تجربه صفحه ضعیف است، همچنان مرتبطترین محتوا را نشان میدهد (Google Search Central (در زبانه جدید باز میشود)).
چرا PageSpeed Insights برای فروشگاه من داده میدانی نشان نمیدهد؟
CrUX فقط صفحهها و منشأهایی را در بر میگیرد که بهطور عمومی قابل کشف باشند و به اندازه کافی بازدیدکننده واجد شرایط Chrome داشته باشند. فروشگاهی کمبازدید ممکن است فقط داده در سطح منشأ داشته باشد یا هیچ دادهای نداشته باشد، پس به آزمونهای آزمایشگاهی و گزارشهای خود پلتفرم تکیه کنید.
آیا برای قبولی به نمره 90 یا بالاتر در Lighthouse نیاز دارم؟
خیر. نمره عملکرد Lighthouse یک نتیجه آزمایشگاهی است، در حالی که ارزیابی Core Web Vitals از دادههای میدانی در صدک 75 استفاده میکند، بنابراین یک صفحه میتواند با نمره متوسط Lighthouse قبول شود و با نمره بالا رد شود.
آیا باید همه تصاویر محصول را تنبل بارگذاری کنم؟
خیر. تصاویر زیر صفحه نخست را تنبل بارگذاری کنید، اما تصویر هیرو و تصویر اصلی محصول را فوری بارگذاری کنید و fetchpriority="high" را روی یکی از آنها بگذارید.
چرا نتایج موبایل من از دسکتاپ بدتر است؟
گوگل موبایل و دسکتاپ را جداگانه میسنجد و تلفنهای همراه پردازندهها و شبکههای کندتری دارند. آزمون موبایل Lighthouse این شرایط را با پروفایل Slow 4G و کندسازی 4x برای CPU شبیهسازی میکند.
منابع
- Web Vitals (در زبانه جدید باز میشود)، web.dev (Google)، بهروزرسانی 31 اکتبر 2024
- Largest Contentful Paint (LCP) (در زبانه جدید باز میشود)، web.dev، بهروزرسانی 4 سپتامبر 2025
- Interaction to Next Paint (INP) (در زبانه جدید باز میشود)، web.dev، بهروزرسانی 2 سپتامبر 2025
- Cumulative Layout Shift (CLS) (در زبانه جدید باز میشود)، web.dev، بهروزرسانی 12 آوریل 2023
- Advancing Interaction to Next Paint (در زبانه جدید باز میشود)، web.dev، 10 مه 2023
- Interaction to Next Paint becomes a Core Web Vital on March 12 (در زبانه جدید باز میشود)، web.dev، 12 مارس 2024
- Why lab and field data can be different (در زبانه جدید باز میشود)، web.dev، بهروزرسانی 18 ژوئیه 2022
- Optimize Largest Contentful Paint (در زبانه جدید باز میشود)، web.dev، بهروزرسانی 31 مارس 2025
- Optimize Interaction to Next Paint (در زبانه جدید باز میشود)، web.dev، بهروزرسانی 2 سپتامبر 2025
- Optimize Cumulative Layout Shift (در زبانه جدید باز میشود)، web.dev، بهروزرسانی 7 فوریه 2025
- Total Blocking Time (TBT) (در زبانه جدید باز میشود)، web.dev، تاریخ مراجعه 22 اکتبر 2026
- The performance effects of too much lazy loading (در زبانه جدید باز میشود)، web.dev، بهروزرسانی 31 مارس 2022
- CrUX methodology (در زبانه جدید باز میشود)، Chrome for Developers، بهروزرسانی 20 ژوئن 2024
- CrUX API (در زبانه جدید باز میشود)، Chrome for Developers، بهروزرسانی 13 اکتبر 2026
- About PageSpeed Insights (در زبانه جدید باز میشود)، Google for Developers، بهروزرسانی 21 اکتبر 2024
- Lighthouse throttling documentation (در زبانه جدید باز میشود)، GoogleChrome در GitHub، تاریخ مراجعه 22 اکتبر 2026
- Understanding page experience in Google Search results (در زبانه جدید باز میشود)، Google Search Central، بهروزرسانی 22 سپتامبر 2026
- Performance best practices for Shopify themes (در زبانه جدید باز میشود)، Shopify، تاریخ مراجعه 22 اکتبر 2026
- Never lazy load the LCP image (در زبانه جدید باز میشود)، Shopify، تاریخ مراجعه 22 اکتبر 2026
- Set fetchpriority high on the LCP image (در زبانه جدید باز میشود)، Shopify، تاریخ مراجعه 22 اکتبر 2026
- Liquid filters: image_tag (در زبانه جدید باز میشود)، Shopify، تاریخ مراجعه 22 اکتبر 2026
- Web performance dashboard (در زبانه جدید باز میشود)، مرکز راهنمای Shopify، تاریخ مراجعه 22 اکتبر 2026
- Web performance (در زبانه جدید باز میشود)، مرکز راهنمای Shopify، تاریخ مراجعه 22 اکتبر 2026
- Apps in your theme (در زبانه جدید باز میشود)، مرکز راهنمای Shopify، تاریخ مراجعه 22 اکتبر 2026
- Migrate to theme app extensions (در زبانه جدید باز میشود)، Shopify، تاریخ مراجعه 22 اکتبر 2026
- Image performance enhancements in WordPress 6.3 (در زبانه جدید باز میشود)، Make WordPress Core، 13 ژوئیه 2023
- Version 6.3 (در زبانه جدید باز میشود)، مستندات WordPress.org، تاریخ انتشار 8 اوت 2023
- How to optimize performance for WooCommerce stores (در زبانه جدید باز میشود)، مستندات توسعهدهندگان WooCommerce، تاریخ مراجعه 22 اکتبر 2026
- Best practices for the use of the cart fragments API (در زبانه جدید باز میشود)، وبلاگ توسعهدهندگان WooCommerce، 16 ژوئن 2023
همه راهنماها
- SPF، DKIM و DMARC در فروشگاه اینترنتی: الزامات Gmail و YahooSPF، DKIM و DMARC چه میکنند، Gmail، Yahoo و Outlook.com از فرستندگان چه میخواهند، تنظیم آنها در Shopify و WooCommerce و رسیدن به p=reject.
- ابزارهای اورلی دسترسپذیری و حکم FTC علیه accessiBe: آنچه صاحبان فروشگاه باید بدانندحکم سال 2025 کمیسیون FTC آمریکا، accessiBe را بهخاطر ادعای انطباق با WCAG به پرداخت 1 میلیون دلار ملزم کرد. حکم چه میگوید، چه نمیگوید و فروشگاههای دارای اورلی چه کنند؟
- اخطارنامه ADA برای وبسایت دریافت کردهاید؟ اول این موارد را بررسی کنیداخطارنامه ADA برای وبسایت معمولاً چه ادعایی دارد، WCAG چه نقشی دارد، چه مدارکی جمع کنید، چرا اورلی کد را اصلاح نمیکند و کی با وکیل تماس بگیرید. مشاوره حقوقی نیست.