PHP Compatibility Checker

Description

Le vérificateur de compatibilité PHP Engine peut être utilisé par tout site WordPress sur tout hébergeur web pour vérifier la compatibilité de la version PHP.

This plugin will lint theme and plugin code inside your WordPress file system and give you back a report of compatibility issues for you to fix. Compatibility issues are categorized into errors and warnings and will list the file and line number of the offending code, as well as the info about why that line of code is incompatible with the chosen version of PHP. The plugin will also suggest updates to themes and plugins, as a new version may offer compatible code.

Cette extension n’exécute pas votre code de thème et d’extension, elle ne peut donc pas détecter les problèmes de compatibilité à l’exécution.

Please note that linting code is not perfect. This plugin cannot detect unused code-paths that might be used for backwards compatibility, and thus might show false positives. We maintain a whitelist of plugins that can cause false positives. We are continuously working to ensure the checker provides the most accurate results possible.

This plugin relies on WP-Cron to scan files in the background. The scan will get stuck if the site’s WP-Cron isn’t running correctly. Please see the FAQ for more information.

Mise à jour vers PHP 7.3

  • Utilisez cette extension pour vérifier la compatibilité de votre site jusqu’à PHP 7.3 !
  • Au mois de juillet 2019, 20,1% des sites WordPress utilisent une version de PHP plus ancienne que PHP 5.6.
  • Ces versions de PHP sont dépréciées and non supportées depuis plus de 2 ans.
  • Seulement 54,1 % des sites WordPress utilisent PHP 7, la version principale actuelle de PHP.

Avertissement

Bien que cette extension soit conçue pour détecter autant de problèmes que possible, une détection fiable à 100 % est très difficile à garantir. Il est recommandé d’exécuter des tests complets avant de migrer vers une nouvelle version PHP.

Cette extension a été créée par WP Engine pour aider la communauté WordPress à augmenter l’adoption de versions PHP modernes. Nous accueillons les contributors à contribuer à cette extension, et sommes excités de voir comment les développeurs et d’autres hébergeurs WordPress utilisent cette extension.

Pour informer des problèmes de sécurité liés à cette extension, veuillez envoyer un e-mail à WordPress@wpengine.com
PHP Compatibility Checker inclut le support des commandes WP-CLI :

wp phpcompat <version> [--scan=<scan>]


<version>
    PHP version to test.

[--scan=<scan>]
  Whether to scan only active plugins and themes or all of them.
  default: active
  options:
    - active
    - all

Exemple : wp phpcompat 7.2 --scan=active

Captures d’écran

  • Écran principal : options du vérificateur de compatibilité
  • Écran de résultats de compatibilité

Installation

Note: If you have WordPress 2.7 or above you can simply go to ‘Plugins’ > ‘Add New’ in the WordPress admin and search for « PHP Compatibility Checker » and install it from there.

Pour installer manuellement :
1. Téléverser phpcompat dans le répertoire /wpengine-wp-content/plugins/
2. Activer l’extension via le menu “Extensions” de WordPress

Vous trouverez les options de l’extension dans le menu de l’administration WP Outils => Compatibilité PHP . Une fois que vous cliquez démarrer Il faudra quelques minutes pour effectuer l’analyse. N’hésitez pas laisser la page en cours et revenez voir les résultats ultérieurement.

Des commandes WP-CLI sont disponibles, voir l’onglet Autres notes pour plus de détails.

FAQ

  1. Cela fonctionnera-t-il en dehors du compte hébergeur de WP Engine ?

    Oui, cette extension peut être utilisée sur n’importe quel site WordPress sur n’importe quel hébergeur.

  2. Des commandes WP-CLI sont-elles disponibles ?

    Yes, this plugin does extend WP-CLI and provide commands. See the Other Notes tab for details.

  3. Une extension que j’ai créée est répertoriée comme non compatible, que dois-je faire ?

    We maintain a whitelist of plugins that cause false positives. If your plugin shows up as incompatible but you think that is wrong, please open a GitHub issue on the project, or email wordpress@wpengine.com with info about your plugin and why you know it is compatible (you have automated tests, the failure is on backwards compatibility code paths, etc).

  4. Puis-je l’utiliser pour tester des projets PHP non-WordPress ?

    Oui ! Bien que vous ne puissiez pas utiliser cette extension WordPress pour tester vos projets autres que WordPress, vous pouvez utiliser la librairie open source PHPCompatibility sur laquelle est bâtie cette extension.

  5. Pourquoi mon thème ou extension a-t-il été ignoré ?

    Some servers have timeouts to prevent long running queries, this is commonly 60 seconds. This can prevent the checker from being able to process large themes or plugins. You should check with your host to see if this timeout can be temporarily removed. The best way around this timeout issue is to run this plugin on a local copy of your site, or you can use the WP-CLI command.

    You can use the filter wpephpcompat_scan_timeout to customize the scan timeout. See this for an example.

    Définir le délai d’attente à 0 désactive le cron/délai d’attente.

  6. L’analyse est bloquée, que puis-je faire ?

    The PHP Compatibility Checker relies on WP-Cron to process plugins/themes in batches, this is necessary to avoid server timeouts. The scan will get stuck if your site’s WP-Cron isn’t functioning. You can look into this using WP Crontrol. The cron is called wpephpcompat_start_test_cron. This could also be an issue if your site is using basic authentication.

    You can also use the WP-CLI command or disable the timeout to avoid using WP-Cron.

  7. J’ai trouvé un bogue ou j’ai une suggestion, puis-je contribuer en retour ?

    Oui ! WP Engine a un dépôt Github public où vous pouvez contribuer à cette extension. Merci d’ouvrir une « issue » sur le dépôt GitHub. Nous développons activement cette extension, et sommes toujours très heureux de recevoir des propositions de mise à jour de code (des « pull requests »).

    Cette extension a été créé par WP Engine pour aider la communauté WordPress à adopter les versions récentes de PHP. Nous souhaitons la bienvenue aux contributeurs de cette extensions et sommes impatients de voir comment les développeurs et les autres hébergeurs WordPress utilisent cette extension.

Pour informer des problèmes de sécurité liés à cette extension, veuillez envoyer un e-mail à WordPress@wpengine.com

Avis

28 octobre 2021
This plugin gets a continuous FATAL ERROR on my server and wastes a lot of machine resources (not necessary). My server hangs and cuts the service> ERROR 500 Uninstall and everything works fine Plugin NOT RECOMMENDED
8 octobre 2021
Hangs endlessly. Does not put the results it has got up on screen immediately a scan is finished either so the information gained is usually lost if it hangs. Doesn't have a checkbox type of list to allow scanning of a subset of your Plug-Ins. The help talks of 'getting stuck' and what you can do about it and goes on to recommend WP Control (yet another plug-in). However, WP Control itself is so obscure and so wholly without on-screen information or hover-over help that using it just has you going ever deeper into a rabbit-hole. A pity as it could be useful to check compatibility with a Lint based check of this sort. If it worked.
Lire les 104 avis

Contributeurs & développeurs

« PHP Compatibility Checker » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.

Contributeurs

“PHP Compatibility Checker” a été traduit dans 21 locales. Remerciez l’équipe de traduction pour ses contributions.

Traduisez « PHP Compatibility Checker » 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

1.5.2

  • Removed PHP 5.2 checks
  • Fixed PHP 8 issue where plugin cannot cannot be uninstalled.

1.5.1

  • Added Smart Plugin Manager to whitelisted plugins

1.5.0

  • Added support for PHP 7.3 compatibility checks

1.4.8

  • Update dependencies.

1.4.7

  • Better translation support.

1.4.6

  • Switched to new PHPCompatibilityWP library to help prevent false positives.

1.4.5

  • Use plugin version number to enqueue scripts and styles.

1.4.4

  • PHP 5.2 Support & PHP 7.1 and 7.2 Lints.
  • Updated call to action sidebar depending on platform.

1.4.3

  • Fixed Composer issue.

1.4.1

  • Updated PHP_CodeSniffer to fix a security advisory.
  • Whitelisted a number of plugins.

1.4.0

  • Updated UX for viewing PHP errors to be more intuitive and require less scrolling.
  • Added links for non-technical users who need assistance from developers to fix PHP errors or to test their site in PHP 7 enabled hosting environments.

1.3.2

  • Added a « Clean up » button and uninstall.php.
  • Added phpcompat_phpversions filter.

1.3.1

  • Whitelisted a number of plugins.

1.3.0

  • Updated the PHPCompatibility library to latest version. Should fix many false positives.
  • Changed language and added help text to Admin UI.

1.2.4

  • Fixed Composer issue.

1.2.3

  • Updated the PHPCompatibility library to latest version.
  • Whitelisted TablePress.

1.2.2

  • Whitelisted UpdraftPlus and Max Mega Menu.

1.2.1

  • Updated the PHPCompatibility library to latest version

1.2.0

  • Updated the PHPCompatibility library to latest version
  • Added support for PHP 5.6

1.1.2

  • Fixed issue with WordPress notices breaking the plugin header.
  • Changed the way we send and parse JSON.
  • You can now restart an in progress scan.
  • Updated download.js to v4.2 for better Safari compatibility.

1.1.1

  • Fixed bug with active job display.
  • Updated progress bar calculation.

1.1.0

  • Test results now persist page reloads.
  • Failed tests will show an overview of the results.
  • The scan timeout is now configurable using a filter. See the FAQ for more details.

1.0.3

  • Fixed a bug in the WP-CLI command
  • Added a handful of PHP 7 compatible plugins to the whitelist

1.0.2

  • Added additional role protections
  • Changed the UI colors to better understand output at a glance
  • Exclude checking node_modules and tmp directories
  • Added support for child theme’s parent theme

1.0.1

  • Updated compatibility library with a few bugfixes
  • Added skip logic to prevent checker from hanging

1.0.0

  • Major update to add PHP 7 checking support
  • Improved the UX of the progress bar
  • Fixed bug with the way the plugin menu was registered

0.1.0

  • Initial version
  • PHP 5.5, 5.4, and 5.3 Support
  • Basic WP-CLI Commands