Performance Lab

Description

L’extension Performance Lab est une collection de modules dédiés à l’amélioration des performances de votre site. La plupart d’entre eux sont destinés à être intégrés au sein du cœur WordPress. L’extension permet d’activer et tester chaque module individuellement pour bénéficier de ces fonctionnalités avant qu’elles soient disponibles dans le cœur de WordPress. Cette extension permet ainsi de recevoir des retours d’utilisation afin d’améliorer les solutions proposées.

L’extension comprend actuellement les modules de performances suivants :

  • Couleur dominante de l’image : ajoute la prise en charge d’une fonction permettant de stocker la couleur dominante des images nouvellement téléchargées et de créer un arrière-plan d’espace réservé de cette couleur.
  • Prise en charge de WebP : ajoute une vérification de la prise en charge de WebP sur la page de l’État de Santé du site.
  • Téléversements WebP : créé une version WebP de chaque nouvelle image JPEG téléversée, si le format WebP est pris en charge par le serveur.
  • Audit des ressources chargées : cela ajoute une vérification des ressources CSS et JS sur la page d’État de Santé du Site.
  • Vérification des options chargées automatiquement : ajoute une vérification des options chargées automatiquement dans l’état de santé du site.

Installation

Installation depuis WordPress

  1. Allez sur l’écran Extensions > Ajouter.
  2. Recherchez l’extension Performance Lab.
  3. Installez et activez l’extension Performance Lab.

Installation manuelle

  1. Téléversez le dossier performance-lab complet dans le répertoire /wp-content/plugins/.
  2. Allez sur l’écran de gestion des Extensions.
  3. Activez l’extension Performance Lab.

Après l’activation

  1. Visitez le nouveau menu Réglages > Performances.
  2. Activez chaque module que vous souhaitez utiliser.

FAQ

Quel est l’objectif de cette extension ?

Le premier objectif de l’extension Performance Lab est de permettre de tester divers modules de performances ayant pour but d’atterrir dans le cœur WordPress. Il s’agit donc d’une collection d’extensions de fonctionnalités (en anglais Feature plugins), ce qui rend cette extension très différente des autres extensions proposant des fonctionnalités de performances qui ne sont pas destinées au cœur WordPress et qui se basent potentiellement sur des fonctionnalités qui ne pourront jamais être utilisées par le cœur WP. La liste des modules disponibles changera régulièrement : les modules existants seront retirés une fois qu’ils sortiront dans le cœur WordPress et d’autres nouveaux modules seront régulièrement ajoutés.

Puis-je utiliser cette extension sur un site en production ?

Comme l’indique sont objectif principal (voir ci-dessus), cette extension peut être considérée comme une extension visant à tester les modules de performances inclus. Cependant, à moins qu’une fonctionnalité de soit marquée comme étant « expérimentale », chaque module a été testé et éprouvé afin de permettre son usage en production. Bien entendu et comme avec toute extension, vous utilisez cette extension sous votre propre responsabilité.

Où puis-je partager mes retours d’expérience ?

Feedback is encouraged and much appreciated, especially since this plugin is a collection of future WordPress core features. If you have suggestions or requests for new features, you can submit them as an issue in the Performance Lab GitHub repository. If you need help with troubleshooting or have a question about the plugin, please create a new topic on our support forum.

Où puis-je signaler des bogues de sécurité ?

L’équipe Performance et la communauté WordPress prennent au sérieux les bogues de sécurité. Nous apprécions vos efforts pour divulguer de manière responsable vos découvertes, et ferons notre possible pour reconnaître vos contributions.

Pour signaler un problème de sécurité, veuillez consulter le programme WordPress HackerOne.

Comment puis-je contribuer à l’extension ?

Les contributions sont toujours les bienvenues ! En savoir plus sur la façon de s’impliquer dans le Core Performance Team Handbook.

J’ai activé le module de téléchargements WebP, mais les images WebP ne sont pas toujours générées lorsque je télécharge une image JPEG. Pourquoi ?

Il existe deux raisons principales pour lesquelles une image WebP peut ne pas être générée :

  1. Performance Lab a identifié que la version WebP de l’image JPEG téléversée aurait une poids de fichier plus grand que celui de l’image JPEG d’origine, elle ne sera pas générée.
  2. The JPEG image was not uploaded to the Media Library. At this time, WebP versions are only generated for images to the Media Library. WebP versions are not generated for JPEG images that are added to your site in other ways, such as in a template file or the Customizer.

Avec le module téléversements WebP activé, l’extension générera-t-il des versions JPEG et WebP de chaque image que je téléverse ?

Par défaut, le module téléversement WebP ne générera que des versions WebP des images que vous téléversez. Pour que les versions WebP et JPEG soient générées, aller à Réglages > Média et activer l’option Générer des fichiers JPEG en plus de WebP.

Avis

18 janvier 2024 1 réponse
Got the BIG warning that you're breaking this plugin up into 3 different standalone plugins; because that's what users want... 3 more plugins to install. I played along and installed WebP Uploads. Uninstalled Performance. The outcome: nothing. No menu whatsoever for Webp settings. Uploaded an image, no webp conversion. If your goal was to waste my time... mission accomplished.

hmm

2 novembre 2023 1 réponse
pagespeed.web.dev says: Consider using the Performance Lab plug-in to automatically convert your JPEG uploads to the WebP format, if it is supported.But it's not true, this plugin is not converting anything (maybe I am missing something), but yeah, useless for me
26 octobre 2023 1 réponse
converting photos to .webp is very fast, everything works well and it's really great. Thank you.
23 octobre 2023 1 réponse
Performance Lab one of the greatest extensions developed by WordPress team. It's just makes your web site superfast with a few clicks. There's no deep settings or configurations. If you're not a developer and using WordPress simply blogging, you must have to install Performance Lab.
Lire les 35 avis

Contributeurs/contributrices & développeurs/développeuses

« Performance Lab » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.

Contributeurs

“Performance Lab” a été traduit dans 20 locales. Remerciez l’équipe de traduction pour ses contributions.

Traduisez « Performance Lab » dans votre langue.

Le développement vous intéresse ?

Parcourir le code, consulter le SVN dépôt, ou s’inscrire au journal de développement par RSS.

Journal

2.9.0

Fonctionnalités

  • Infrastructure: Add standalone plugin version constants for auto-sizes and speculation-rules. (958)

Améliorations

  • Infrastructure: Include standalone plugin slugs in generator tag. (949)

Corrections de bogues

  • Infrastructure: Sanitize metric name for Server-Timing header. (957)

2.8.0

Fonctionnalités

  • Infrastructure: Introduce UI for managing Performance Lab standalone plugins. (864)

Améliorations

  • Infrastructure: Add support for plugin live preview in the plugin directory. (890)
  • Infrastructure: Allow module can-load.php callbacks to return a WP_Error with more information. (891)
  • Infrastructure: Implement admin pointer to indicate to the user they need to migrate modules to their standalone plugins. (910)
  • Infrastructure: Implement migration logic and UI from Performance Lab modules to their standalone plugins. (899)
  • Infrastructure: Reset admin pointer dismissal for module migration when the user activates a module. (915)

Corrections de bogues

  • Infrastructure: Fix construction of translation strings in admin/plugins.php. (925)

2.7.0

Améliorations

  • Images: Remove Fetchpriority module as the functionality is now available in WordPress core. (854)
  • Infrastructure: Bump minimum required PHP version to 7.0 and minimum required WP version to 6.3. (851)

Documentation

  • Infrastructure: Publish Dominant Color Images standalone plugin. (842)

2.6.1

Corrections de bogues

  • Infrastructure: Remove PHPStan config file from plugin directory. (816)

Documentation

  • Infrastructure: Add standalone plugin assets. (815)

2.6.0

Fonctionnalités

  • Infrastructure: Add output buffering checkbox to Server-Timing screen. (801)
  • Infrastructure: Implement logic to measure specific hook execution time with Server-Timing controlled by a WP Admin screen. (784)

Améliorations

  • Images: Fix incorrect function prefixes in Dominant Color Images. (789)
  • Infrastructure: Add early exit clauses to files with procedural code. (790)
  • Infrastructure: Allow disabling Server-Timing entirely using PERFLAB_DISABLE_SERVER_TIMING constant. (795)

Corrections de bogues

  • Images: Fix WebP handling when editing images based on WordPress 6.3 change. (796)
  • Infrastructure: Fix errors detected by Plugin Checker. (788)

2.5.0

Améliorations

  • Images: Check for fetchpriority feature being available in WordPress core before loading the module. (769)
  • Database Optimization: Remove SQLite module. (764)
  • Infrastructure: Bump tested up to version to 6.3. (772)

2.4.0

Améliorations

  • Database: Implement migration prompt to migrate from SQLite module to standalone plugin due to removal in the following release. (739)
  • Infrastructure: Enhance code quality by adding PHPStan and fixing level 0 issues. (730)
  • Infrastructure: Use static closures for minor performance improvement whenever instance access is not needed. (729)

Corrections de bogues

  • Database: Fix SQLite module deactivation routine to make standalone plugin migration work correctly. (743)
  • Infrastructure: Make Server-Timing header output more robust. (736)

2.3.0

Améliorations

  • Images: Configure Dominant Color and Fetchpriority modules for their standalone plugins. (704)
  • Infrastructure: Temporarily remove Dominant Color Images from standalone plugins.json definition. (719)
  • Infrastructure: Use dynamic version from plugins.json for manual workflow. (710)

Corrections de bogues

  • Images: Add dominant color styling before any existing inline style attributes. (716)
  • Infrastructure: Resolve low-severity security advisory GHSA-66qq-69rw-6×63.

2.2.0

Améliorations

  • Images: Remove « experimental » flag from Fetchpriority module. (702)
  • Infrastructure: Implement infrastructure for launching standalone plugins from modules, including WebP Uploads. (699)
  • Infrastructure: Include WordPress-Extra rules in PHPCS configuration and fix resulting problems. (695)

Corrections de bogues

  • Images: Sanitize target param before using it. (690)

Documentation

  • Images: Change module slug/directory from dominant-color to dominant-color-images. (708)
  • Images: Rename Dominant Color module to Dominant Color images. (705)

2.1.0

Améliorations

  • Infrastructure: Add wp-total metric to default Server-Timing metrics. (669)
  • Infrastructure: Ensure module load.php files really only load other code to prevent conflicts in standalone plugins. (674)

Corrections de bogues

  • Infrastructure: Fix problems with placing object-cache.php drop-in. (672)

2.0.0

Améliorations

  • Object Cache: Update WordPress version to 6.1 and remove Cache modules. (641)
  • Measurement: Add perflab_disable_object_cache_dropin filter. (629)
  • Database: Add an indicator in the adminbar to show when using SQLite. (604)

Corrections de bogues

  • Images: Check for existing $metadata['sizes'] to fix PHP warning. (648)
  • Images: Use correct number of arguments in filter callback. (634)
  • Database: Fix invalid docs and return types as highlighted by static analysis. (645)
  • Infrastructure: Fix incorrect usage of plugin_action_links_* filter. (647)

Documentation

  • Infrastructure: Add file header to object-cache drop-in to clarify purpose. (649)

1.9.0

Améliorations

  • Database: Remove warning about multi-server environment from the SQLite module description. (619)

Corrections de bogues

  • Infrastructure: Enhance object-cache.php drop-in interoperability with other plugins. (616)

1.8.0

Fonctionnalités

  • Measurement: Implement Server-Timing API foundation as well as basic load time metrics. (553)
  • Database: Implement new experimental SQLite integration module. (547)
  • Images: Implement new experimental fetchpriority module. (528)

Corrections de bogues

  • Database: Fix SQLite notices related to undefined properties. (600)
  • Database: Fix incorrect handling of admin_email and actual admin user’s email when original admin_email user was deleted. (603)
  • Database: Make WP filesystem setup more robust to prevent potential errors. (595)

1.7.0

Améliorations

  • Images: Change WP Image editor quality for mime types. (571)
  • Infrastructure: Introduce database focus area, rename JavaScript focus area to JS & CSS, and phase out Site Health focus area. (566)

Corrections de bogues

  • Images: Avoid potentially adding invalid attributes or duplicates for dominant color images. (578)
  • Images: Fix fatal error in REST API response when an image has no attachment metadata. (568)
  • Images: Fix image focal point bug when dominant color is enabled by not overriding style attribute. (582)
  • Images: Fix opt-in checkbox for generating WebP and JPEG to also show on Multisite. (565)

1.6.0

Améliorations

  • Site Health: Only load Site Health checks for persistent cache and full page cache when not available in core. (543)
  • Images: Add checkbox to Settings > Media to control whether to generate JPEG in addition to WebP. (537)
  • Images: Generate only WebP images by default for JPEG and WebP uploads. (527)
  • Infrastructure: Bump minimum WordPress requirement to 6.0. (549)

1.5.0

Améliorations

  • Site Health: Improve autoloaded options check by highlighting largest autoloaded options. (353)

1.4.0

Améliorations

  • Images: Enhance JS replacement mechanism for WebP to JPEG to more reliably replace full file name. (443)
  • Images: Introduce webp_uploads_get_content_image_mimes() to get content image MIME replacement rules. (420)
  • Infrastructure: Add PERFLAB_PLUGIN_DIR_PATH constant for plugin_dir_path(). (429)
  • Infrastructure: Rename Site Health check modules for language and consistency. (423)

Corrections de bogues

  • Site Health: Fix incorrect usage of badge colors in all Site Health checks. (472)
  • Images: Add the original image’s extension to the WebP file name to ensure it is unique. (444)
  • Images: Fix REST API support for plain permalinks. (457)
  • Infrastructure: Remove plugin option network-wide for Multisite during uninstall. (458)

1.3.0

Améliorations

  • Images: Add replacing of images only in frontend context. (424)
  • Images: Allow control for which image sizes to generate additional MIME type versions. (415)
  • Images: Discard WebP image if it is larger than corresponding JPEG image. (418)
  • Images: Optimize computing dominant color and transparency for images by combining the two functions. (381)
  • Images: Provide fallback JPEG images in frontend when WebP is not supported by the browser. (360)
  • Images: Rely on wp_get_image_editor() methods argument to check whether it supports dominant color methods. (404)
  • Images: Remove experimental label from Dominant Color module and turn on by default for new installs. (425)
  • Site Health: Remove perflab_aea_get_resource_file_size() in favor of wp_filesize(). (380)
  • Site Health: Update documentation link for autoloaded options. (408)
  • Infrastructure: Implement mechanism to not load module if core version is available. (390)

Corrections de bogues

  • Images: Ensure incorrect usage of webp_uploads_upload_image_mime_transforms filter is treated correctly. (393)
  • Images: Fix PHP notice and bug in logic for when webp_uploads_prefer_smaller_image_file filter is set to true. (397)
  • Images: Fix an infinite loop in the WebP fallback mechanism. (433)
  • Images: Fix dominant color upload process to not override potential third-party editors. (401)
  • Images: Remove additional image backup sources & sizes files when attachment deleted. (411)
  • Infrastructure: Avoid including .husky directory in plugin ZIP. (421)
  • Infrastructure: Do not show admin pointer in multisite Network Admin. (394)

1.2.0

Fonctionnalités

  • Images: Add Dominant Color module to provide color background for loading images. (282)
  • Site Health: Add Site Health check for Full Page Cache usage. (263)

Améliorations

  • Images: Update webp_uploads_pre_generate_additional_image_source filter to allow returning file size. (334)
  • Infrastructure: Introduce plugin uninstaller routine. (345)
  • Infrastructure: Use wp_filesize instead of filesize if available. (376)

Corrections de bogues

  • Images: Avoid overwriting existing WebP files when creating WebP images. (359)
  • Images: Back up edited full image sources when restoring the original image. (314)

1.1.0

Fonctionnalités

  • Infrastructure: Add Performance Lab generator meta tag to wp_head output. (322)

Améliorations

  • Images: Introduce filter webp_uploads_pre_generate_additional_image_source to short-circuit generating additional image sources on upload. (318)
  • Images: Introduce filter webp_uploads_pre_replace_additional_image_source to short-circuit replacing additional image sources in frontend content. (319)
  • Images: Refine logic to select smaller image file in the frontend based on webp_uploads_prefer_smaller_image_file filter. (302)
  • Images: Replace the featured image with WebP version when available. (316)
  • Site Health: Update Site Health Autoloaded options documentation link. (313)
  • Infrastructure: Avoid unnecessarily early escape of Site Health check labels. (332)

Corrections de bogues

  • Object Cache: Correct label for persistent object cache Site Health check. (329)
  • Images: Only update the specified target images when an image is edited. (301)

1.0.0

Fonctionnalités

  • Images: Generate secondary image MIME types when editing original image. (235)

Améliorations

  • Images: Introduce webp_uploads_prefer_smaller_image_file filter allowing to opt in to preferring the smaller image file. (287)
  • Images: Select MIME type to use in frontend content based on file size. (243)
  • Site Health: Update Site Health reports copy for more clarity and consistency. (272)

Documentation

  • Infrastructure: Define the plugin’s version support and backward compatibility policy. (240)

1.0.0-rc.1

Améliorations

  • Images: Change expected order of items in the webp_uploads_content_image_mimes filter. (250)
  • Images: Replace images in frontend content without using an additional regular expression. (262)
  • Images: Restore and backup image sizes alongside the sources properties. (242)

Corrections de bogues

  • Images: Select image editor based on WebP support instead of always using the default one. (259)

1.0.0-beta.3

Corrections de bogues

  • Infrastructure: Ensure default modules are loaded regardless of setting registration. (248)

1.0.0-beta.2

Fonctionnalités

  • Images: Create additional MIME types for the full size image. (194)
  • Site Health: Add module to warn about excessive amount of autoloaded options. (124)

Améliorations

  • Images: Adds sources information to the attachment media details of the REST response. (224)
  • Images: Allow developers to select which image format to use for images in the content. (230)
  • Images: Allow developers to tweak which image formats to generate on upload. (227)
  • Images: Replace the full size image in the_content with additional MIME type if available. (195)
  • Object Cache: Include memcached extension in checks for object cache support. (206)
  • Infrastructure: Add plugin banner and icon assets. (231)
  • Infrastructure: Use .gitattributes instead of .distignore to better support ZIP creation. (223)

Corrections de bogues

  • Images: Use original image to generate all additional image format sub-sizes. (207)
  • Infrastructure: Replace unreliable activation hook with default value for enabled modules. (222)

Documentation

  • Infrastructure: Update release instructions to include proper branching strategy and protect release branches. (221)

1.0.0-beta.1

Fonctionnalités

  • Images: Add WebP for uploads module. (32)
  • Images: Support retry mechanism for generating sub-sizes in additional MIME types on constrained environments. (188)
  • Images: Update the_content with the appropriate image format. (152)
  • Site Health: Add WebP support in site health. (141)
  • Site Health: Add module to alert about excessive JS and CSS assets. (54)
  • Object Cache: Add Site Health check module for persistent object cache. (111)
  • Infrastructure: Add settings screen to toggle modules. (30)
  • Infrastructure: Added admin pointer. (199)

Améliorations

  • Object Cache: Always recommend object cache on multisite. (200)
  • Images: Create image sub-sizes in additional MIME types using sources for storage. (147)
  • Images: Update module directories to be within their focus directory. (58)
  • Site Health: Enhance detection of enqueued frontend assets. (136)
  • Infrastructure: Add link to Settings screen to the plugin’s entry in plugins list table. (197)
  • Infrastructure: Enable all non-experimental modules on plugin activation. (191)
  • Infrastructure: Include generated module-i18n.php file in repository. (196)
  • Infrastructure: Introduce perflab_active_modules filter to control which modules are active. (87)
  • Infrastructure: Remove unnecessary question marks from checkbox labels. (110)
  • Infrastructure: Rename object-caching to object-cache. (108)

Corrections de bogues

  • Images: Ensure the -scaled image remains in the original uploaded format. (143)
  • Images: Fix typo to access to the correct image properties. (203)
  • Infrastructure: Ensure that module header fields can be translated. (60)

Documentation

  • Site Health: Mark Site Health Audit Enqueued Assets module as experimental for now. (205)
  • Infrastructure: Add readme.txt and related update script. (72)
  • Infrastructure: Add changelog generator script. (51)
  • Infrastructure: Add contribution documentation. (47)
  • Infrastructure: Add release documentation. (138)
  • Infrastructure: Define module specification in documentation. (26)