توضیحات
افزونه آزمایشگاه عملکرد مجموعهای از ویژگیهای متمرکز بر بهبود عملکرد سایت شماست که بیشتر آنها در نهایت باید در هسته وردپرس ادغام شوند. این افزونه کشف و فعالسازی افزونههای ویژگیِ عملکردِ تکی را که تیم عملکرد در حال توسعه آنهاست، تسهیل میکند. به این ترتیب میتوانید ویژگیها را آزمایش کنید تا قبل از در دسترس قرار گرفتن در هسته وردپرس، از مزایای آنها بهرهمند شوید. همچنین میتوانید با ارائه بازخورد برای بهبود بیشتر راهکارها، نقش مهمی ایفا کنید.
افزونههای ویژگی که در حال حاضر توسط این افزونه برجسته شدهاند عبارتند از:
- بهینهساز جاسازیها
- تصاویر واکنشگرای بهبودیافته
- جایگزینهای تصویر
- اولویتبندی تصاویر
- بازگشت/جلوی آنی
- فرمتهای مدرن تصویر
- کارآگاه بهینهسازی (پیشنیاز برای بهینهساز جاسازیها و اولویتبندی تصاویر)
- ترجمههای بهینه
- بارگذاری پیشدستانه (Speculative Loading)
- انتقالهای نما (View Transitions) (آزمایشی)
این افزونهها میتوانند جدا از نصب آزمایشگاه عملکرد نیز نصب شوند، اما فعال بودن افزونه آزمایشگاه عملکرد تضمین میکند که همزمان با توسعه ویژگیهای جدید عملکرد، از آنها مطلع شوید.
نصب
نصب از طریق وردپرس
- به مسیر افزونهها > افزودن بروید.
- عبارت Performance Lab را جستجو کنید.
- افزونه Performance Lab را نصب و فعال کنید.
نصب دستی
- کل پوشه
performance-labرا در پوشه/wp-content/plugins/آپلود کنید. - از افزونه ها دیدن کنید.
- افزونه Performance Lab را فعال کنید.
پس از فعالسازی
- به منوی جدید تنظیمات > عملکرد بروید.
- ماژول های فردی را که می خواهید استفاده کنید فعال کنید.
سوالات متداول
-
هدف این افزونه چیست؟
-
هدف اصلی افزونه آزمایشگاه عملکرد، امکان آزمایش ویژگیهای مختلف عملکردی است که هدف نهایی آنها ورود به هسته وردپرس است. این افزونه در اصل مجموعهای از «افزونههای ویژگی» است که آن را از سایر افزونههای عملکردی متمایز میکند؛ افزونههایی که ویژگیهای عملکردیای ارائه میدهند که برای هسته وردپرس هدفگذاری نشدهاند و احتمالاً متکی به عملکردهایی هستند که استفاده از آنها در هسته وردپرس امکانپذیر نیست. لیست ویژگیهای موجود به طور منظم تغییر خواهد کرد: ویژگیهای موجود ممکن است پس از انتشار در هسته وردپرس حذف شوند، در حالی که ویژگیهای جدید ممکن است در هر نسخه اضافه شوند.
-
آیا می توانم از این افزونه در سایت تولیدی خود استفاده کنم؟
-
بر اساس هدف اصلی افزونه (به بالا مراجعه کنید)، این افزونه عمدتاً میتواند به عنوان یک افزونه تست بتا برای ویژگیهای مختلف عملکردی که شامل میشود، در نظر گرفته شود. با این حال، درک این نکته ضروری است که استفاده از آن با خطرات ذاتی همراه است. به کاربران توصیه میشود با احتیاط عمل کنند و بدانند که این کار را با مسئولیت خود انجام میدهند.
-
کجا می توانم نظر خود را از افزونه ارسال کنم؟
-
بازخوردها تشویق شده و بسیار قدردانی میشوند، به خصوص که این افزونه مجموعهای از ویژگیهای آینده هسته وردپرس است. اگر پیشنهاد یا درخواستی برای ویژگیهای جدید دارید، میتوانید آنها را به عنوان یک issue در مخزن گیتهاب آزمایشگاه عملکرد ثبت کنید. اگر برای عیبیابی به کمک نیاز دارید یا سوالی درباره افزونه دارید، لطفاً یک موضوع جدید در انجمن پشتیبانی ما ایجاد کنید.
-
کجا میتوانم باگهای امنیتی را گزارش دهم؟
-
تیم عملکرد و جامعه وردپرس باگهای امنیتی را جدی میگیرند. ما از تلاشهای شما برای افشای مسئولانه یافتههایتان قدردانی میکنیم و تمام تلاش خود را برای به رسمیت شناختن مشارکتهای شما انجام خواهیم داد.
برای گزارش یک مشکل امنیتی، لطفاً از برنامه WordPress HackerOne بازدید کنید.
-
چگونه می توانم در توسعه افزونه مشارکت کنم؟
-
مشارکتها همیشه مورد استقبال هستند! درباره نحوه مشارکت در دستورالعمل تیم عملکرد هسته بیشتر بیاموزید.
نقد و بررسیها
توسعه دهندگان و همکاران
“افزونه Performance Lab (آزمایشگاه عملکرد)” نرم افزار متن باز است. افراد زیر در این افزونه مشارکت کردهاند.
مشارکت کنندگان“افزونه Performance Lab (آزمایشگاه عملکرد)” به 27 زبان ترجمه شده است. با تشکر از مترجمین برای همکاری و کمکهایشان.
ترجمه “افزونه Performance Lab (آزمایشگاه عملکرد)” به زبان شما.
علاقه مند به توسعه هستید؟
کد را مرور کنید، مخزن SVN را بررسی کنید، یا از طریق RSS در گزارش توسعه مشترک شوید.
گزارش تغییرات
4.2.0
بهبودها
- افزودن
declare( strict_types = 1 )به همه فایلهای PHP. (2424) - حداقل PHP موردنیاز را از 7.2 به 7.4 افزایش میدهد. (2469)
- ممیزی داراییهای صفشده: پاسخهای با اندازه صفر و no-store را بهعنوان خطا در نظر میگیرد. (2481)
- Server Timing – افزودن توضیح را مجاز میکند و مدتزمان را اختیاری میسازد. (2379)
4.1.0
رفع باگها
- رفع منطق نامعتبر Server‑Timing برای زمانبندی کوئریهای پایگاهداده زمانی که مقدار
$wpdb->queriesبه دلیل انجام نشدن هیچ کوئریای هنوزnullاست. (2346)
مستندات
- حذف Web Worker Offloading از بخش ویژگیهای ویژه افزونه Performance Lab. (2404)
4.0.1
رفع باگها
- افزودن اخطارها و بررسی نوع بهبودیافته برای
$wpdb->queriesهنگام تلاش برای محاسبه زمانبندی سرور برای پرسوجوهای پایگاهداده. (2159) - پرش از شیوهنامهها با ویژگیهای
hrefخالی در بررسی سلامت سایت. (2281, 2328) - استفاده از تابع گریز مناسب. (2246)
4.0.0
بهبودها
- افزودن بازگشت/جلوی آنی به فهرست افزونههای ویژگی عملکرد. (2119)
- افزودن اشارهگرهای مدیریت برای ترویج ویژگیهای جدید آزمایشگاه عملکرد. (2122)
- اجرای گزینهی پذیرش (Opt-in) برای قرار دادن
PERFLAB_PLACE_OBJECT_CACHE_DROPINدرobject-cache.phpبرای تایمینگ سرور. (1996) - استفاده از
wp_is_rest_endpoint()برای تشخیص اینکه آیا در حال مدیریت یک درخواست REST API هستیم. (2094)
رفع باگها
- رفع TypeError در
perflab_aao_query_autoloaded_options()با سریالسازی مقادیر گزینه غیر اسکالر. (1934) - حذف اشارهگر مدیریت برای افزونه جدید در صورتی که افزونه از قبل فعال باشد. (2143)
- جلوگیری از اجرای بررسی سرآیندهای کش موثر منابع در محیطهای محلی/توسعه. (2035)
- استفاده از پردازنده تگ HTML برای بررسی اسکریپتها و استایلهای مسدودکننده در آزمایش منابع صفبندیشده سلامت سایت. (2059)
3.9.0
بهبودها
- حذف برچسبهای آزمایشی از بهینهساز جاسازیها و اولویتبندی تصاویر. (1846)
3.8.0
بهبودها
- افزودن تست سلامت سایت برای سرآیند پاسخ صفحه
Cache-Control: no-storeکه bfcache را غیرفعال میکند. (1807) - افزودن تست سلامت سایت برای تأیید اینکه منابع استاتیک با انقضای طولانیمدت (far-future expires) ارائه میشوند. (1727)
- صفبندی اسکریپتها با استفاده از
plugins_url()به جایplugin_dir_url(). (1761)
3.7.0
بهبودها
- افزودن راهنما برای مدیریت افزونههای ویژگی عملکرد. (1734)
- کشف خودکار وابستگیهای افزونه هنگام دریافت افزونههای ویژگی عملکرد از WordPress.org. (1680)
- نادیده گرفتن کش ناپایدار (transient cache) در
perflab_query_plugin_info()هنگامی که افزونه وجود ندارد. (1694) - فشردهسازی اسکریپت مورد استفاده برای فعالسازی ایجکس ویژگیها؛ هشدار در صورت عدم وجود و ارائه فایل اصلی هنگام فعال بودن SCRIPT_DEBUG. (1658)
رفع باگها
- رفع مشکل عدم دانلود مداوم آخرین نسخه افزونه. (1693)
3.6.1
رفع باگها
- رفع باگ شرایط مسابقه (race condition) که در آن فعالسازی چندین ویژگی به صورت متوالی میتوانست منجر به عدم فعالسازی برخی ویژگیها شود. (#1675)
3.6.0
بهبودها
- استفاده از ایجکس برای فعالسازی ویژگیها / افزونهها در آزمایشگاه عملکرد. (1646)
- معرفی بررسی سلامت سرآیند AVIF. (1612)
- نصب و فعالسازی کارآگاه بهینهسازی (Optimization Detective) هنگامی که ویژگی بهینهساز جاسازیها از صفحه عملکرد فعال میشود. (1644)
رفع باگها
- اصلاح موارد استفاده از رشته ‘Plugin not found’. (1651)
3.5.1
رفع باگها
- در نظر گرفتن وابستگیهای افزونه هنگام ذخیره اطلاعات مربوط به افزونه. (1613)
3.5.0
بهبودها
- افزودن بارگذاری در Web Worker به لیست ویژگیهای عملکرد. (1577)
- ذخیره اطلاعات تنها برای افزونههای مستقل مرتبط در کش ناپایدار. (1573)
- استفاده از یک درخواست API وردپرس برای دریافت اطلاعات همه افزونهها. (1562)
3.4.1
رفع باگها
- اصلاح استفاده نادرست از _n(). (1491)
3.4.0
بهبودها
- حذف معیار Server-Timing برای زمان کوئری گزینههای بارگذاری خودکار. (1456)
رفع باگها
- جلوگیری از ارسال سرآیند Server-Timing هنگام پاکسازی بافر. (1443)
- رفع مشکل ظاهر شدن مجدد گزینههای غیرفعال در سلامت سایت پس از بهروزرسانی خارجی. (1374)
- بهبود صفحه عملکرد هنگامی که درخواستهای خارجی به WordPress.org ناموفق هستند. (1474)
3.3.1
بهبودها
- افزودن قوانین سختگیرانه PHPStan (به جز empty.notAllowed). (1241)
رفع باگها
- امکان ارسال null به perflab_admin_pointer(). (1393)
3.3.0
بهبودها
