Beschreibung
Das Plugin Performance Lab ist eine Sammlung von Modulen, die darauf spezialisiert sind, die Leistung deiner Website zu verbessern. Die meisten davon sollen letztendlich zum WordPress-Core hinzugefügt werden. Das Plugin erlaubt es, die Module einzeln zu aktivieren und zu testen, bevor diese im WordPress-Core zur Verfügung stehen werden und erlaubt Rückmeldungen, um die Lösungen weiter zu verbessern.
Momentan enthält das Plugin die folgenden Performance-Module:
- Dominant Color Images: Adds support to store the dominant color of newly uploaded images and create a placeholder background of that color.
- Fetchpriority: Adds a fetchpriority hint for the primary content image on the page to load faster.
- WebP Support Health Check: Adds a WebP support check in Site Health status.
- WebP-Uploads: Erstellt WebP-Versionen für neu hinzugefügte JPEG-Bilder, wenn dies vom Server unterstützt wird.
- Enqueued Assets Health Check: Adds a CSS and JS resource check in Site Health status.
- Autoloaded Options Health Check: Adds a check for autoloaded options in Site Health status.
Installation
Installation innerhalb von WordPress
- Gehe zu Plugins > Hinzufügen.
- Suche nach Performance Lab.
- Installiere und aktiviere das Performance-Lab-Plugin.
Manuelle Installation
- Lade den ganzen Ordner
performance-lab
in das Verzeichnis/wp-content/plugins/
hoch. - Besuche Plugins.
- Aktiviere das Performance-Lab-Plugin.
Nach der Aktivierung
- Besuche den neuen Einstellungen > Performance-Menüpunkt.
- Aktiviere die individuellen Module, welche du nutzen möchtest.
FAQ
-
Was ist der Zweck dieses Plugins?
-
Der Hauptzweck des Performance-Lab-Plugins ist es, das Testen von verschiedenen Performance-Modulen zu ermöglichen, sodass diese schließlich in den WordPress-Core integriert werden. Es ist in erster Linie eine Sammlung von Feature-Plugins, was es von anderen Performance-Plugins unterscheidet, welche Performance-Funktionen bereitstellen, die nicht den WordPress-Core gezielt ansprechen und potentiell auf Funktionalitäten angewiesen sind, die für den Einsatz im WordPress-Core nicht praktikabel sind. Die Liste der verfügbaren Module wird sich regelmäßig verändern: bestehende Module werden entfernt, wenn diese im WordPress-Core veröffentlicht worden sind, während neue Module mit jeder Veröffentlichung hinzugefügt werden.
-
Kann ich dieses Plugin auf meiner Produktiv-Website einsetzen?
-
Aufgrund des Hauptzwecks dieses Plugins (siehe oben), kann es hauptsächlich als Beta-Test-Plugin für die verschiedenen enthaltenen Performance-Module angesehen werden. Sofern ein Modul nicht explizit als „experimentell“ markiert ist, wurde es bereits getestet und ist bis zu einem gewissen Maß etabliert, sodass es in einer Produktiv-Umgebung eingesetzt werden kann. Trotzdem, wie mit jedem anderem Plugin auch, bleibt der Einsatz dein eigenes Risiko.
-
Wo kann eine Rückmeldung zum Plugin eingereicht werden?
-
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.
-
Wo können Sicherheitslücken gemeldet werden?
-
Das Performance-Team und die WordPress-Community nehmen Sicherheitslücken ernst. Wir schätzen deine Bemühungen, deine Entdeckungen verantwortungsvoll zu veröffentlichen und werden uns bemühen, deine Beiträge zu würdigen.
Um ein Sicherheitsproblem zu melden, besuche bitte das WordPress-HackerOne-Programm.
-
Kann ich zu diesem Plugin beitragen?
-
Beiträge sind immer willkommen! Im Handbuch des Core-Performance-Teams erfährst du mehr darüber, wie du dich beteiligen kannst.
-
Das Modul WebP Uploads ist aktiviert, aber es werden nicht immer WebP-Bilder erzeugt, wenn ein JPEG-Bild hochgeladen wird. Warum?
-
Es gibt zwei Hauptgründe, warum ein WebP-Bild nicht erzeugt werden kann:
- Performance Lab hat festgestellt, dass die WebP-Version des hochgeladenen JPEG-Bildes eine größere Dateigröße als das ursprüngliche JPEG-Bild haben würde, sodass es die WebP-Version nicht erzeugt.
- Das JPEG-Bild wurde nicht in die Mediathek hochgeladen. Derzeit werden WebP-Versionen nur für Bilder in der Mediathek erstellt. WebP-Versionen werden nicht für JPEG-Bilder erstellt, die auf andere Weise zu deiner Website hinzugefügt wurden, zum Beispiel in einer Template-Datei oder im Customizer.
-
Erzeugt das Plugin bei aktiviertem WebP Uploads-Modul JPEG- und WebP-Versionen von jedem Bild, das hochladen wird?
-
Standardmäßig erzeugt das Modul WebP Uploads nur WebP-Versionen der Bilder, die du hochlädst. Wenn du WebP- und JPEG-Versionen generieren möchtest, kannst du zu Einstellungen > Medien navigieren und die Option JPEG-Dateien zusätzlich zu WebP erzeugen aktivieren.
Rezensionen
Mitwirkende & Entwickler
„Performance Lab“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:
Mitwirkende„Performance Lab“ wurde in 19 Sprachen übersetzt. Danke an die Übersetzerinnen und Übersetzer für ihre Mitwirkung.
Übersetze „Performance Lab“ in deine Sprache.
Interessiert an der Entwicklung?
Durchstöbere den Code, sieh dir das SVN Repository an oder abonniere das Entwicklungsprotokoll per RSS.
Änderungsprotokoll
2.6.1
Fehlerbehebungen
- Infrastructure: Remove PHPStan config file from plugin directory. (816)
Dokumentation
- Infrastructure: Add standalone plugin assets. (815)
2.6.0
Funktionen
- 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)
Verbesserungen
- 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)
Fehlerbehebungen
- 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
Verbesserungen
- 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
Verbesserungen
- 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)
Fehlerbehebungen
- 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
Verbesserungen
- Images: Configure
Dominant Color
andFetchpriority
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)
Fehlerbehebungen
- 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
Verbesserungen
- 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)
Fehlerbehebungen
- Images: Sanitize target param before using it. (690)
Dokumentation
- Images: Change module slug/directory from
dominant-color
todominant-color-images
. (708) - Images: Rename
Dominant Color
module toDominant Color images
. (705)
2.1.0
Verbesserungen
- 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)
Fehlerbehebungen
- Infrastructure: Fix problems with placing
object-cache.php
drop-in. (672)
2.0.0
Verbesserungen
- 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)
Fehlerbehebungen
- 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)
Dokumentation
- Infrastructure: Add file header to object-cache drop-in to clarify purpose. (649)
1.9.0
Verbesserungen
- Database: Remove warning about multi-server environment from the SQLite module description. (619)
Fehlerbehebungen
- Infrastructure: Enhance object-cache.php drop-in interoperability with other plugins. (616)
1.8.0
Funktionen
- 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)
Fehlerbehebungen
- Database: Fix SQLite notices related to undefined properties. (600)
- Database: Fix incorrect handling of
admin_email
and actual admin user’s email when originaladmin_email
user was deleted. (603) - Database: Make WP filesystem setup more robust to prevent potential errors. (595)
1.7.0
Verbesserungen
- 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)
Fehlerbehebungen
- 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
Verbesserungen
- 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
Verbesserungen
- Site Health: Improve autoloaded options check by highlighting largest autoloaded options. (353)
1.4.0
Verbesserungen
- 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 forplugin_dir_path()
. (429) - Infrastructure: Rename Site Health check modules for language and consistency. (423)
Fehlerbehebungen
- 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
Verbesserungen
- 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 ofwp_filesize()
. (380) - Site Health: Update documentation link for autoloaded options. (408)
- Infrastructure: Implement mechanism to not load module if core version is available. (390)
Fehlerbehebungen
- 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 totrue
. (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
Funktionen
- 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)
Verbesserungen
- 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 offilesize
if available. (376)
Fehlerbehebungen
- 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
Funktionen
- Infrastructure: Add Performance Lab generator meta tag to
wp_head
output. (322)
Verbesserungen
- 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)
Fehlerbehebungen
- 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
Funktionen
- Images: Generate secondary image MIME types when editing original image. (235)
Verbesserungen
- 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)
Dokumentation
- Infrastructure: Define the plugin’s version support and backward compatibility policy. (240)
1.0.0-rc.1
Verbesserungen
- 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)
Fehlerbehebungen
- Images: Select image editor based on WebP support instead of always using the default one. (259)
1.0.0-beta.3
Fehlerbehebungen
- Infrastructure: Ensure default modules are loaded regardless of setting registration. (248)
1.0.0-beta.2
Funktionen
- Images: Create additional MIME types for the full size image. (194)
- Site Health: Add module to warn about excessive amount of autoloaded options. (124)
Verbesserungen
- 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)
Fehlerbehebungen
- 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)
Dokumentation
- Infrastructure: Update release instructions to include proper branching strategy and protect release branches. (221)
1.0.0-beta.1
Funktionen
- Bilder: Füge WebP für das Uploads-Modul hinzu. (32)
- Bilder: Unterstütze den Wiederholungs-Mechanismus für das Generieren von Untergrößen bei zusätzlichen MIME-Typen auf eingeschränkte Umgebungen. (188)
- Images: Update
the_content
with the appropriate image format. (152) - Website-Zustand: Füge die WebP-Unterstützung im Website-Zustand hinzu. (141)
- Website-Zustand: Füge das Modul für die Warnung von zu vielen JavaScript- und CSS-Bestandteilen hinzu. (54)
- Objekt-Cache: Füge das Modul für den persistenten Objekt-Cache im Website-Zustand hinzu. (111)
- Infrastruktur: Fügt die Einstellungs-Seite hinzu, um die Module ein- und auszuschalten. (30)
- Infrastruktur: Füge Admin-Hinweis hinzu. (199)
Verbesserungen
- Objekt-Cache: Empfehle Objekt-Cache immer bei Multisite. (200)
- Bilder: Erstelle Bild-Untergrößen bei zusätzlichen MIME-Typen mittels
sources
zur Aufbewahrung. (147) - Bilder: Verschiebe Modul-Verzeichnisse, sodass sie in dem dazugehörigen Fokus-Verzeichnis liegen. (58)
- Website-Zustand: Verbessere die Erkennung von eingebundenen Frontend-Bestandteilen. (136)
- Infrastruktur: Füge einen Link zur Einstellungs-Seite beim Plugin-Eintrag in der Plugin-Liste hinzu. (197)
- Infrastruktur: Aktivere alle nicht-experimentiellen Module bei der Plugin-Aktivierung. (191)
- Infrastruktur: Füge die generierte module-i18n.php Datei zum Repository hinzu. (196)
- Infrastruktur: Führe den
perflab_active_modules
Filter ein, um zu kontrollieren, welche Module aktiv sind. (87) - Infrastruktur: Entferne unnötige Fragezeichen von den Checkbox-Beschriftungen. (110)
- Infrastruktur: Benenne
object-caching
zuobject-cache
um. (108)
Fehlerbehebungen
- Bilder: Stelle sicher, dass das
-scaled
Bild im ursprünglich hochgeladenen Format bleibt. (143) - Bilder: Behebe einen Tippfehler, um den Zugriff zu den korrekten Bild-Eigenschaften zu erlauben. (203)
- Infrastruktur: Stelle sicher, dass die Felder für die Modul-Header übersetzt werden können. (60)
Dokumentation
- Website-Zustand: Markiere das Modul „Prüfung von eingebundenen Elementen“ im Website-Zustand vorerst als experimentell. (205)
- Infrastruktur: Füge die
readme.txt
und dass dazugehörige Update-Skript hinzu. (72) - Infrastruktur: Füge Changelog-Generator-Skript hinzu. (51)
- Infrastruktur: Füge Mitwirkungs-Dokumentation hinzu. (47)
- Infrastruktur: Füge Release-Dokumentation hinzu. (138)
- Infrastruktur: Definiere Modul-Spezifikation in der Dokumentation. (26)