توضیحات
این افزونه بارگذاری تصاویر (و ویدیوها) را با اولویتبندی برای بهبود بزرگترین ترسیم محتوایی (LCP)، بارگذاری تنبل و انتخاب دقیقتر اندازه تصویر بهینهسازی میکند.
بهینهسازیهای فعلی شامل موارد زیر است:
- افزودن لینکهای پیشبارگذاری (preload) با
fetchpriority=highمخصوص نقطه شکست (هم به عنوان عناصرLINK[rel=preload]و هم سرآیندهای پاسخLink) برای URLهای تصویر عناصر LCP:- یک عنصر
IMG، شامل ویژگیهایsrcset/sizesکه به صورتimagesrcset/imagesizesدرLINKارائه شدهاند. - اولین عنصر
SOURCEبا ویژگیtypeدر یک عنصرPICTURE. (عناصرPICTUREجهتدهی هنری (Art-directed) که از مدیا کوئریها استفاده میکنند، پشتیبانی نمیشوند.) - عنصری با ویژگی
styleخطی برایbackground-imageCSS. - عنصری با
background-imageCSS که با یک شیوهنامه اعمال شده است (زمانی که تصویر از یک منشأ مجاز باشد). - تصویر
posterیک عنصرVIDEO.
- یک عنصر
- اطمینان از اینکه
fetchpriority=highتنها زمانی به یکIMGاضافه میشود که عنصر LCP در تمام نقاط شکست واکنشگرا باشد. - افزودن
fetchpriority=lowبه تگهایIMGکه در ناحیه دید اولیه ظاهر میشوند اما قابل مشاهده نیستند، مانند زمانی که اسلایدهای بعدی کاروسل هستند. - بارگذاری تنبل:
- اعمال بارگذاری تنبل روی تگهای
IMGبر اساس اینکه آیا در ناحیه دید اولیه هر نقطه شکست (breakpoint) ظاهر میشوند یا خیر. - پیادهسازی بارگذاری تنبل تصاویر پسزمینه CSS که از طریق ویژگیهای
styleخطی اضافه شدهاند. - بارگذاری تنبل تگهای
VIDEOبا تنظیم ویژگیهای مناسب بر اساس اینکه آیا در ناحیه دید اولیه ظاهر میشوند یا خیر. اگر یکVIDEOعنصر LCP باشد، مقدارpreload=autoرا دریافت میکند؛ اگر در ناحیه دید اولیه باشد، مقدار پیشفرضpreload=metadataباقی میماند؛ اگر در ناحیه دید اولیه نباشد، مقدارpreload=noneرا دریافت میکند. همچنین ویژگیهای اولیهpreload،autoplayوposterویدیوهای بارگذاری تنبل، هنگامی کهVIDEOوارد ناحیه دید میشود، بازیابی میشوند.
- اعمال بارگذاری تنبل روی تگهای
- Responsive image sizes:
- Ensure
sizes=autois set onIMGtags after setting correct lazy-loading (above). - ~~Compute the
sizesattribute using the widths of an image collected from URL Metrics for each breakpoint (when not lazy-loaded since then handled bysizes=auto).~~ (This has been removed due to an issue; use Enhanced Responsive Images instead.)
- Ensure
- کاهش اندازه تصویر
posterیکVIDEOاز اندازه کامل به اندازه مناسب برای حداکثر عرض ویدیو (در دسکتاپ).
این افزونه به افزونه Optimization Detective به عنوان یک پیشنیاز نیاز دارد. لطفاً برای اطلاعات پیشزمینه بیشتر درباره نحوه کار این افزونه و همچنین گزینههای توسعهدهنده اضافی، به آن افزونه مراجعه کنید.
👈 توجه: این افزونه صفحات را برای بازدیدکنندگان واقعی بهینه میکند و برای بهینهسازی صفحات به بازدیدکنندگان وابسته است. بنابراین، بلافاصله پس از فعالسازی افزونه، بهینهسازیها را مشاهده نخواهید کرد. لطفاً منتظر بمانید تا دادههای مربوط به URL Metrics برای بازدیدهای موبایل و دسکتاپ جمعآوری شوند. همچنین، از آنجا که کاربران مدیر معمولاً بازدیدکنندگان عادی محسوب نمیشوند، بهینهسازیها بهصورت پیشفرض برای مدیران اعمال نمیشود.
سایت شما باید دارای REST API قابل دسترسی برای بازدیدکنندگان احراز هویت نشده در بخش کاربری باشد، زیرا معیارها درباره نحوه بهینهسازی صفحه از این طریق جمعآوری میشوند. در حال حاضر هیچ تنظیماتی و هیچ رابط کاربری برای این افزونه وجود ندارد زیرا طراحی شده است تا بدون هیچگونه پیکربندی کار کند.
نصب
نصب از طریق وردپرس
- از افزونه ها> افزودن جدید دیدن کنید.
- جستجو برای اولویتبندی تصویر.
- نصب و فعال سازی افزونه اولویتبندی تصویر.
نصب دستی
- تمامی محتویات پوشه
image-prioritizerرا در مسیر/wp-content/plugins/بارگذاری کنید. - به بخش افزونهها بروید.
- افزونه Image Prioritizer را فعال کنید.
سوالات متداول
-
کجا میتوانم بازخورد خود را درباره افزونه ارسال کنم؟
-
بازخوردها تشویق شده و بسیار قدردانی میشوند، به خصوص که این افزونه ممکن است شامل ویژگیهای آینده هسته وردپرس باشد. اگر پیشنهاد یا درخواستی برای ویژگیهای جدید دارید، میتوانید آنها را به عنوان یک issue در مخزن گیتهاب تیم عملکرد وردپرس ثبت کنید. اگر برای عیبیابی به کمک نیاز دارید یا سوالی درباره افزونه دارید، لطفاً یک موضوع جدید در انجمن پشتیبانی ما ایجاد کنید.
-
کجا میتوانم باگهای امنیتی را گزارش دهم؟
-
تیم عملکرد و جامعه وردپرس باگهای امنیتی را جدی میگیرند. ما از تلاشهای شما برای افشای مسئولانه یافتههایتان قدردانی میکنیم و تمام تلاش خود را برای به رسمیت شناختن مشارکتهای شما انجام خواهیم داد.
برای گزارش یک مشکل امنیتی، لطفاً از برنامه WordPress HackerOne بازدید کنید.
-
چگونه میتوانم در افزونه مشارکت کنم؟
-
مشارکتها همیشه مورد استقبال هستند! درباره نحوه مشارکت در دستورالعمل تیم عملکرد هسته بیشتر بیاموزید.
کد منبع افزونه در مخزن WordPress/performance در گیتهاب قرار دارد.
نقد و بررسیها
توسعه دهندگان و همکاران
“اولویتبندی تصاویر (Image Prioritizer)” نرم افزار متن باز است. افراد زیر در این افزونه مشارکت کردهاند.
مشارکت کنندگان“اولویتبندی تصاویر (Image Prioritizer)” به 9 زبان ترجمه شده است. با تشکر از مترجمین برای همکاری و کمکهایشان.
ترجمه “اولویتبندی تصاویر (Image Prioritizer)” به زبان شما.
علاقه مند به توسعه هستید؟
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
گزارش تغییرات
1.0.0-beta3
بهبودها
- Add URL Metric mutation helpers to extension initialization API. (1951)
- Improve construction of inline scripts with
sourceURL, hardened JSON encoding, and exporting JSON in separate script. (2169)
رفع باگها
- Allow background image URLs for file types the web server doesn’t know about, e.g. when AVIF is sent as
application/octet-stream. (1956) - Remove responsive image sizes computation. (2109)
1.0.0-beta2
بهبودها
- بهروزرسانی
OD_HTML_Tag_Processor::next_tag()برای اجازه دادن به آرگومان$queryو آمادهسازی جهت رد کردن تگهای بسته به صورت پیشفرض. (1872) - در دسترس قرار دادن توابع ثبت وقایع برای افزونههای سمت کاربر و در نظر گرفتن خودکار مقدار
isDebug. (1895)
رفع باگها
- اصلاح کدگذاری URL در سرآیند پاسخ HTTP لینک. (1907)
- رفع مشکل شناسایی غیرقابل پیشبینی عنصر LCP در یک گروه معیار URL. (1903)
1.0.0-beta1
بهبودها
- ارتقاء نسخه به 1.0.0-beta1 برای نشان دادن خروج از حالت آزمایشی. ببینید: 1846.
- محاسبه ویژگی
sizesواکنشگرا بر اساسwidthازboundingClientRectدر معیارهای URL ثبت شده. (1840)
0.3.1
رفع باگها
- حذف بررسی نادرست نوع آغازگر منبع هنگام تصمیمگیری برای ارسال تصویر پسزمینه LCP. (1760)
0.3.0
بهبودها
- افزودن لینکهای پیشبارگذاری عناصر picture برای LCP. (1707)
- مقاومسازی اعتبارسنجی URL تصویر پسزمینه LCP ارسال شده توسط کاربر. (1713)
- بارگذاری تنبل تصاویر پسزمینه اضافه شده از طریق ویژگیهای استایل خطی. (1708)
- پیشبارگذاری URLهای تصویر برای عناصر LCP با تصاویر پسزمینه خارجی. (1697)
- ارائه اسکریپتهای فشردهنشده زمانی که
SCRIPT_DEBUGفعال است. (1643)
0.2.0
بهبودها
- بارگذاری تنبل ویدئوها و پوستر ویدئوها. (1596)
- اولویتبندی بارگذاری تصویر پوستر عناصر LCP ویدیویی. (1498)
- انتخاب اندازه تصویر پوستر ویدیوی کوچکتر بر اساس ابعاد واقعی. (1595)
- افزودن fetchpriority=low به تصاویر مسدود شده (occluded) در ناحیه دید اولیه (مثلاً تصاویر در اسلایدهای مخفی کاروسل). (1482)
- اجتناب از بارگذاری تنبل تصاویر و جاسازیها مگر اینکه معیارهای URL برای هر دو حالت موبایل و دسکتاپ وجود داشته باشد. (1604)
0.1.4
بهبودها
- انتقال منطق اندازههای خودکار از تصاویر واکنشگرای بهبودیافته به اولویتبندی تصاویر. (1476)
0.1.3
رفع باگها
- رفع مشکل مدیریت اولویتبندی تصویر زمانی که تنها برخی گروههای ناحیه دید پر شدهاند. (1404)
0.1.2
- بهروزرسانی منطق PHP برای در نظر گرفتن تغییرات در API کارآگاه بهینهسازی. (1302)
0.1.1
- رفع نحوه مدیریت بازدیدکننده تگ دارای استایل background-image در پارس کردن استایل بدون تصویر پسزمینه. (1288)
0.1.0
- انتشار اولیه.
