Plugin Check (PCP)


Plugin Check is a tool for testing whether your plugin meets the required standards for the plugin directory. With this plugin you will be able to run most of the checks used for new submissions, and check if your plugin meets the requirements.

Additionally, the tool flags violations or concerns around plugin development best practices, from basic requirements like correct usage of internationalization functions to accessibility, performance, and security best practices.

The checks can be run either using the WP Admin user interface or WP-CLI:

  • To check a plugin using WP Admin, please navigate to the Tools > Plugin Check menu. You need to be able to manage plugins on your site in order to access that screen.
  • To check a plugin using WP-CLI, please use the wp plugin check command. For example, to check the “Hello Dolly” plugin: wp plugin check hello.php
    • Note that by default when using WP-CLI, only static checks can be executed. In order to also include runtime checks, a workaround is currently necessary using the --require argument of WP-CLI, to manually load the cli.php file within the plugin checker directory before WordPress is loaded. For example: wp plugin check hello.php --require=./wp-content/plugins/plugin-check/cli.php

The checks are grouped into several categories, so that you can customize which kinds of checks you would like to run on a plugin.

Keep in mind that this plugin is not a replacement for the manual review process, but it will help you speed up the process of getting your plugin approved for the plugin repository, and it will also help you avoid some common mistakes.

Even if you do not intend to host your plugin in the directory, you are encouraged to use Plugin Check so that your plugin follows the base requirements and best practices for WordPress plugins.


Installation from within WordPress

  1. Visit Plugins > Add New.
  2. Search for Plugin Check.
  3. Install and activate the Plugin Check plugin.

Manual installation

  1. Upload the entire plugin-check folder to the /wp-content/plugins/ directory.
  2. Visit Plugins.
  3. Activate the Plugin Check plugin.


On puc contribuir amb l’extensió?

All development for this plugin is handled via GitHub any issues or pull requests should be posted there.

What if the plugin reports something that’s correct as an “error” or “warning”?

We strive to write a plugin in a way that minimizes false positives but if you find one, please report it in the GitHub repo. For certain false positives, such as those detected by PHPCodeSniffer, you may be able to annotate the code to ignore the specific problem for a specific line.

Per què assenyala una cosa com dolenta?

It’s not flagging “bad” things, as such. Plugin Check is designed to be a non-perfect way to test for compliance with the Plugin Review guidelines, as well as additional plugin development best practices in accessibility, performance, security and other areas. Not all plugins must adhere to these guidelines. The purpose of the checking tool is to ensure that plugins uploaded to the central plugin repository meet the latest standards of WordPress plugin and will work on a wide variety of sites.

Molts llocs utilitzen extensions personalitzades, i això està perfectament bé. Però les extensions destinades a ser utilitzades en molts tipus diferents de llocs pel públic han de tenir un cert nivell mínim de capacitats, per tal de garantir un bon funcionament en molts entorns diferents. Les directrius de revisió d’extensions es creen amb aquest objectiu en ment.

Aquest verificador d’extensions no és perfecte, i mai ho serà. És només una eina per ajudar els autors d’extensions, o qualsevol altra persona que vulgui fer la seva extensió més capaç. Totes les extensions enviades a són revisades a mà per un equip d’experts. El verificador automàtic d’extensions està destinat a ser una eina útil només, no un sistema absolut de mesurament.

Does a plugin need to pass all checks to be approved in the plugin directory?

To be approved in the plugin directory, a plugin must typically pass all checks in the “Plugin repo” category. Other checks are additional and may not be required to pass.

In any case, passing the checks in this tool likely helps to achieve a smooth plugin review process, but is no guarantee that a plugin will be approved in the plugin directory.


4 de maig de 2024
A great way to validate plugins against WordPress ecosystem standards. Yet another useful tool.
30 de març de 2024
This tool is very useful, not just for developers.Since finding it, I use it to test any new plugins I want to use.I have had good responses from plugin author’s when contacting them to resolve matters.
14 de febrer de 2024 3 respostes
Very helpful. Nevertheless I would have expected that you have run the check on your own plugin and fixed all errors. Errors should be automatically priorized by severity in future versions, e.g.: blocker, critical, major, minor, trivial.
Llegiu totes les 12 ressenyes

Col·laboradors i desenvolupadors

«Plugin Check (PCP)» és programari de codi obert. La següent gent ha col·laborat en aquesta extensió.


“Plugin Check (PCP)” s’ha traduït a 10 configuracions regionals. Gràcies als traductors per les seves aportacions.

Traduïu «Plugin Check (PCP)» a la vostra llengua.

Interessats en el desenvolupament?

Navegueu pel codi, baixeu-vos el repositori SVN, o subscriviu-vos al registre de desenvolupament per fisl de subscripció RSS.

Registre de canvis


  • Fix – Add missing test-content folder needed for runtime checks.
  • Fix – Do not send emails when setting up test environment.
  • Fix – Prevent PHP warning when the argv variable isn’t set.


  • Feature – Complete overhaul of the plugin, its architecture, and all checks.
  • Feature – Added new WP-CLI commands for running checks and listing available options.
  • Enhancement – Added option to only run checks for a specific category.


  • Tweak – Use version 3.8.0 of the PHP_CodeSniffer library, moving away from squizlabs/PHP_CodeSniffer to use PHPCSStandards/PHP_CodeSniffer.
  • Fix – Ensure the plugin works as expected on the WP playground environment to enable reviewers to use PCP. Props @tellyworth.
  • Fix – Undefined array key “argv” when running the plugin check in certain environments. Props @afragen. #340


  • Enhancement – Include support for Windows Servers.
  • Enhancement – Avoid using PHP CLI directly, which enables plugin developers to use PCP in a variety of new environments.
  • Fix – Remove dependency on shell_exec and exec functions, which enables plugin developers to use PCP in a variety of new environments.
  • Fix – Prevent problems with Readme parser warning related to contributor_ignored for when running the check outside Props @dev4press. #276
  • Fix – Remove extra period on the end of the sentence for Phar warning. Props @pixolin. #275


  • Afegit: enllaç “Veure a l’editor de codi” sota cada error o advertència PHPCS. Atrezzo @EvanHerman, @westonruter, @felixarntz @mukeshpanchal27 #262
  • Correcció: assegureu-vos que readme.txt tingui prioritat sobre quan tots dos estiguin presents. Agraïments a @bordoni, @afragen #258
  • Correcció: assegureu-vos que la comprovació PHPCS s’executa fins i tot quan el binari PHPCS no és executable. Atrezzo @bordoni, @shawn-digitalpoint @mrfoxtalbot #254
  • Correcció: llegiu els canvis i errors tipogràfics. Agraïments a @aaronjorbin. #261
  • Correcció: les llargues línies de codi amb la comprovació PHPCS ja no s’expandeixen per sobre de la mida de l’avís. Agraïments a @bordoni, @felixarntz. #263
  • Correcció: assegureu-vos que teniu compatibilitat PHP 7.2 elimineu la coma final. Agraïments a @bordoni, @leoloso. #265
  • Correcció: s’inclouen totes les cadenes que s’han perdut a la versió anterior. Agraïments a @bordoni, @pixolin. #270


  • Característica: s’habilita la modificació del camí binari de PHP utilitzat per l’extensió amb la constant PLUGIN_CHECK_PHP_BIN.
  • Característica – s’inclou una comprovació de l’ús de ALLOW_UNFILTERED_UPLOADS qualsevol fitxer PHP – Agraïments a EvanHerman al # 45
  • Característica – s’inclou una comprovació de la presència dels fitxers de l’aplicació (.a, .bin, .bpk, .deploy, .dist, .distz, .dmg, .dms, .DS_Store, .dump, .elc, .exe, .iso, .lha, .lrf, .lzh, .o, .obj, .phar, .pkg, .sh, ‘.so`) – Agraïments a EvanHerman at #43
  • Característica: s’inclou una comprovació de la presència del fitxer readme.txt o – Agraïments a EvanHerman al #42
  • Correcció: assegureu-vos que l’anàlisi Readme s’inclogui correctament quan hi hagi un fitxer o readme.txt. Agraïments a Bordoni #52
  • Retoc – es deshabiliten les funcions move_uploaded_file, passthru, proc_open – Agraïments a alexsanford al #50
  • Retoc: es canvia el tipus de missatge per utilitzar funcions que WordPress ja inclou d’advertència a error. Atrezzo davidperezgar al #18
  • Retoc: es canvia el tipus de missatge per a un ús incorrecte de l’etiqueta estable de notificació/avís d’errada. Atrezzo davidperezgar al #3

[0.1] 2011-09-04

Versió original de l’eina de comprovació de l’extensió, no una versió publicada de l’extensió, aquest registre de canvis és aquí només per a propòsits històrics.