Plugin Check (PCP)

Descrizione

Plugin Check è uno strumento per verificare se il tuo plugin soddisfa gli standard necessari per la directory dei plugin di WordPress.org. Con questo plugin sarai in grado di eseguire la maggior parte dei controlli utilizzati per i nuovi invii e verificare se il tuo plugin soddisfa i requisiti.

Inoltre, lo strumento segnala violazioni o preoccupazioni relative alle migliori pratiche di sviluppo dei plugin, dai requisiti di base come il corretto utilizzo delle funzioni di internazionalizzazione alle migliori pratiche di accessibilità, prestazioni e sicurezza.

I controlli possono essere eseguiti utilizzando l’interfaccia utente WP Admin o WP-CLI:

  • Per controllare un plugin usando WP Admin, vai al menu Strumenti > Plugin Check. Devi essere in grado di gestire i plugin sul tuo sito per poter accedere a quella schermata.
  • 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

I controlli sono raggruppati in diverse categorie, in modo che tu possa personalizzare il tipo di controlli che desideri eseguire su un plugin.

Tieni presente che questo plugin non sostituisce ancora il processo di revisione manuale, ma ti aiuterà ad accelerare il processo di approvazione del tuo plugin per il repository dei plugin di WordPress.org e ti aiuterà anche a evitare alcuni errori comuni.

Anche se non intendi ospitare il tuo plugin nella directory WordPress.org, ti invitiamo a utilizzare Plugin Check in modo che il tuo plugin segua i requisiti di base e le migliori pratiche per i plugin WordPress.

Installazione

Installazione da WordPress

  1. Visita Plugin > Aggiungi nuovo.
  2. Cerca Plugin Check.
  3. Installa e attiva il plugin Plugin Check.

Installazione manuale

  1. Carica l’intera cartella plugin-check nella directory /wp-content/plugins/.
  2. Visita Plugin.
  3. Attiva Plugin Check.

FAQ

Dove posso contribuire al progetto del plugin?

Tutto lo sviluppo di questo plugin viene gestito tramite GitHub, eventuali problemi o richieste pull devono essere pubblicati lì.

Cosa succede se il plugin segnala qualcosa di corretto come “errore” o “avviso”?

Ci sforziamo di scrivere un plugin in modo da ridurre al minimo i falsi positivi, ma se ne trovi uno, segnalalo nel repository GitHub. Per alcuni falsi positivi, come quelli rilevati da PHPCodeSniffer, potresti essere in grado di annotare il codice per ignorare il problema specifico per una riga specifica.

Perché lo segnala come errato?

Non segnala necessariamente cose “negative”. Il controllo del plugin è progettato per essere un modo non perfetto per verificare la conformità alle linee guida per la revisione dei plugin. Non tutti i plugin devono attenersi a queste linee guida. Lo scopo dello strumento di controllo è garantire che i plugin caricati nel repository centrale dei plugin di WordPress.org rispettino gli standard più recenti dei plugin di WordPress e funzionino su una vasta gamma di siti.

Molti siti utilizzano plugin personalizzati, e questo va benissimo. Ma i plugin destinati all’uso su molti diversi tipi di siti da parte del pubblico devono avere un certo livello minimo di funzionalità, al fine di garantirne il corretto funzionamento in molti ambienti diversi. Le linee guida per la revisione dei plugin sono create con questo obiettivo in mente.

Questo strumento di verifica dei plugin non è perfetto e non lo sarà mai. È solo uno strumento per aiutare chi sviluppa i plugin o chiunque desideri rendere il proprio plugin più completo. Tutti i plugin inviati a WordPress.org sono sottoposti a una revisione manuale da parte di un team di esperti. Il controllore automatico dei plugin è pensato solo come uno strumento utile, non come un sistema di misurazione assoluto.

Un plugin deve superare tutti i controlli per essere approvato nella directory dei plugin di WordPress.org?

Per essere approvato nella directory dei plugin di WordPress.org, un plugin deve superare tutti i controlli nella categoria “Plugin repo”. Altri controlli sono aggiuntivi e potrebbero non essere necessari per esser approvato.

In ogni caso, superare i controlli in questo strumento probabilmente aiuta a ottenere un processo di revisione dei plugin fluido, ma non garantisce che un plugin venga approvato nella directory dei plugin di WordPress.org.

Recensioni

3 Ottobre 2024 1 risposta
I am very impressed with this plugin. I am in the final steps of submitting a new plugin and through the approval process this has helped speed up the process. I am developing a script that will install this plugin if not already installed then run the cli tool to create a report. Eventually this will be a step in the CI/CD pipeline. cli usage can be found on the project’s GitHub project under docs/CLI.md I got some ideas for this plugin to make it more friendly for GitHub, starting that convo with the contributors next.
13 Luglio 2024
DevTools for WordPress is an essential toolkit for WordPress plugin developers, providing a comprehensive suite of features to simplify and accelerate the development process. This plugin is designed to enhance your coding efficiency, improve testing workflows, and ensure seamless integration of your custom plugins into WordPress environments.
Leggi tutte le recensioni di 16

Contributi e sviluppo

“Plugin Check (PCP)” è un software open source. Le persone che hanno contribuito allo sviluppo di questo plugin sono indicate di seguito.

Collaboratori

“Plugin Check (PCP)” è stato tradotto in 11 lingue. Grazie ai traduttori per i loro contributi.

Traduci “Plugin Check (PCP)” nella tua lingua.

Ti interessa lo sviluppo?

Esplora il codice segui il repository SVN, segui il log delle modifiche tramite RSS.

Changelog

1.1.0

  • Feature – New Non_Blocking_Scripts_Check (non_blocking_scripts) runtime check to warn about enqueued scripts that use neither defer nor async.
  • Enhancement – Changed the namespace of included checks.
  • Enhancement – Introduced severity levels for all errors and warnings.
  • Enhancement – CLI: Support checking a plugin from a path or URL.
  • Enhancement – Added short descriptions and URLs for each check.
  • Enhancement – Improved messaging in check results.
  • Enhancement – Updated code obfuscation check with more accurate results.
  • Enhancement – Updated plugin review check to flag missing input sanitization (WordPress.Security.ValidatedSanitizedInput).
  • Fix – Improve readme checks to exclude invalid files.
  • Fix – Only show edit link if files are actually editable.

1.0.2

  • Feature – New Enqueued_Scripts_Scope_Check (enqueued_scripts_scope), Enqueued_Styles_Size_Check (enqueued_styles_size) and Enqueued_Resources_Check (enqueued_resources) performance checks.
  • Enhancement – Improved readme check and added a new wp_plugin_check_ignored_readme_warnings filter.
  • Miglioramento – Nuovo filtro wp_plugin_check_default_categories per modificare le categorie selezionate per impostazione predefinita.
  • Miglioramento – Nuovo filtro wp_plugin_check_ignore_files per consentire di ignorare file specifici.
  • Fix – Corretto il rilevamento dei file readme in Windows normalizzando i percorsi dei file.

1.0.1

  • Fix: aggiunta della cartella test-content mancante, necessaria per i controlli di runtime.
  • Fix: non inviare email durante la configurazione dell’ambiente di test.
  • Fix: Evita l’avviso PHP quando la variabile argv non è impostata.

1.0.0

  • 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.

0.2.3

  • 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

0.2.2

  • 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 WP.org. Props @dev4press. #276
  • Fix – Remove extra period on the end of the sentence for Phar warning. Props @pixolin. #275

0.2.1

  • Aggiunta – Link ‘Visualizza nell’editor del codice’ sotto ciascun errore o avvertimento PHPCS. Crediti a @EvanHerman, @westonruter, @felixarntz, @mukeshpanchal27 #262
  • Fix – Assicurarsi che readme.txt abbia la priorità su readme.md quando entrambi sono presenti. Crediti a @bordoni, @afragen #258
  • Fix – Assicurarsi che il controllo PHPCS venga eseguito anche quando il binario PHPCS non è eseguibile. Crediti a @bordoni, @shawn-digitalpoint, @mrfoxtalbot #254
  • Fix – Modifiche al README e correzione di errori di battitura. Crediti a @aaronjorbin. #261
  • Fix – Le lunghe righe di codice con il controllo PHPCS non si espandono più oltre le dimensioni dell’avviso. Crediti a @bordoni, @felixarntz. #263
  • Fix – Assicurati di avere la compatibilità con PHP 7.2 e rimuovi la virgola finale. Crediti a @bordoni, @leoloso. #265
  • Fix – Includi tutte le stringhe che erano state trascurate nella precedente versione. Crediti a @bordoni, @pixolin. #270

0.2.0

  • Funzionalità – Abilita la modifica del percorso binario PHP utilizzato dal plugin con la costante PLUGIN_CHECK_PHP_BIN.
  • Funzionalità – Include una verifica dell’uso di ALLOW_UNFILTERED_UPLOADS su qualsiasi file PHP – Crediti a EvanHerman su #45
  • Funzionalità: include un controllo per la presenza dei file dell’applicazione (.a, .bin, .bpk, .deploy, .dist, .distz, .dmg, .dms, .DS_Store, .dump, .elc, .exe, .iso, .lha, .lrf, .lzh, .o, .obj, .phar, .pkg, .sh, '.so`) - sostiene EvanHerman su #43
  • Funzionalità - Includere un controllo per la presenza del file readme.txt o readme.md - Crediti a EvanHerman su #42
  • Fix - Controllo che l'analisi del file Readme sia inclusa correttamente quando è presente un file readme.md o readme.txt. Crediti a Bordoni su #52
  • Modifica - Vietare le funzioni move_uploaded_file, passthru, proc_open - Crediti a alexsanford su #50
  • Modifica - Cambia il tipo di messaggio per l'uso di funzioni già incluse da WordPress da Avviso a Errore. Crediti a davidperezgar su #18
  • Modifica - Cambia il tipo di messaggio per l'uso errato della 'Stable tag' da Notifica/Avviso a Errore. Crediti a davidperezgar su #3

[0.1] 2011-09-04

Versione originale dello strumento di controllo del plugin, non una versione rilasciata del plugin, questo changelog è qui solo per scopi storici.