Skip to content

Plugin Check

A Plugin Check (PCP) bővítmény a WordPress.org bővítménytár követelményei és a bevált gyakorlatok szerint ellenőrzi a bővítményed kódját: használata a felületen, WP-CLI-vel és GitHub Actionsben.

This content is not available in your language yet.

A Plugin Check (rövidítve PCP) a WordPress.org bővítménytár hivatalos ellenőrző bővítménye. Azt nézi meg, megfelel-e a bővítményed a tár követelményeinek, és jelzi a nemzetköziesítés, a hozzáférhetőség, a teljesítmény és a biztonság bevált gyakorlatától való eltéréseket. A tárba beküldés előtt érdemes lefuttatni, de akkor is hasznos, ha a bővítményed sosem kerül a WordPress.org-ra: a biztonsági és a teljesítményellenőrzések a saját, ügyfélnek készített bővítményeknél is felfednek hibákat.

Nem helyettesíti a kézi átvizsgálást, és a sikeres futás nem garantálja a jóváhagyást. A tárba kerüléshez általában a „Plugin repo” kategória összes ellenőrzésén át kell mennie a bővítménynek.

A bővítmény PHP 7.4-et és WordPress 6.3-at vagy újabbat igényel. A fejlesztői README szerint ne használd éles oldalon, telepítsd a helyi vagy a fejlesztői példányra.

  1. A WordPress-adminban nyisd meg a Bővítmények > Új bővítmény hozzáadása oldalt.
  2. Keress rá a „Plugin Check (PCP)” névre.
  3. Telepítsd és aktiváld.

Bedrock projektben a bővítményt Composerrel vedd fel, fejlesztői függőségként (a WP Packages tárral):

Terminál
composer require wp-plugin/plugin-check --dev

A Tools > Plugin Check oldalon kiválasztod az ellenőrizendő bővítményt, a kategóriákat, majd elindítod a vizsgálatot. A használathoz jogosultság kell a bővítmények kezeléséhez.

A WP-CLI wp plugin check parancsa a bővítmény nevét, egy könyvtár útvonalát vagy egy zip URL-jét is elfogadja:

Terminál
wp plugin check hello.php
wp plugin check /utvonal/a/bovitmenyhez
wp plugin check https://example.com/bovitmeny.zip

Alapból csak a statikus ellenőrzések futnak, amelyek a kódot olvassák. A futásidejű ellenőrzések tényleg lefuttatnak részeket a kódból, ezekhez be kell tölteni a bővítmény cli.php fájlját:

Terminál
wp plugin check hello.php --require=./wp-content/plugins/plugin-check/cli.php

Bedrockban a wp-content/plugins helyett a web/app/plugins mappa a bővítmények helye.

Kapcsoló Mit csinál
--checks=<ellenőrzések> csak a megadott ellenőrzések futnak (vesszővel elválasztva)
--exclude-checks=<ellenőrzések> kihagy ellenőrzéseket, a --checks után érvényesül
--categories kategóriára szűri az ellenőrzéseket
--ignore-codes=<kódok> egyes találati kódokat figyelmen kívül hagy
--ignore-warnings, --ignore-errors elrejti a figyelmeztetéseket vagy a hibákat
--exclude-directories, --exclude-files további mappák, fájlok kihagyása
--use-pcpignore a bővítmény gyökerében lévő .pcpignore kizárásait használja, helyi és CI-futtatáshoz
--format=<formátum> a kimenet formátuma
--fields=<mezők> a megjelenített mezők

Alapból a .git, a vendor, a vendor_prefixed, a vendor-prefixed és a node_modules mappa ki van zárva.

A találatok két különböző azonosítóval dolgoznak. Az ellenőrzés azonosítója (például late_escaping) a --checks és az --exclude-checks értéke. A találati kód (például missing_composer_json_file) egy ellenőrzés konkrét megállapítása, ezt a --ignore-codes várja. A kódokat így nézheted meg:

Terminál
wp plugin check akismet --format=csv --fields=code,type,severity,message

Minden találat típusa ERROR vagy WARNING, súlyossága 1 (legkisebb) és 10 (legnagyobb) között van.

A --format értéke table (alap), csv, json vagy ctrf. Mindegyiknek van strict- előtagos változata is: strict-table, strict-csv, strict-json, strict-ctrf.

Terminál
wp plugin list-checks
wp plugin list-check-categories

A dokumentáció szerinti kategóriák közt van a general, a plugin_repo, a security és a performance. A pontos, aktuális listát a fenti parancs adja. Néhány ellenőrzés:

  • late_escaping: a kimenet escapelése a böngészőnek küldés előtt (biztonság);
  • direct_file_access: az ABSPATH ellenőrzése a közvetlen fájlelérés ellen (biztonság);
  • i18n_usage: nemzetköziesítési gyakorlatok;
  • enqueued_scripts_size, enqueued_styles_size: az oldalra betöltött szkriptek és stíluslapok együttes mérete a 293 KB-os küszöb alatt marad-e (teljesítmény);
  • plugin_readme, plugin_header_fields: a readme.txt és a fejléc követelményei (bővítménytár).

A teljes táblázat a dokumentációban van.

A WordPress/plugin-check-action a találatokat fájlmegjegyzésként írja a GitHub Actions futásának eredményébe. A legegyszerűbb workflow:

.github/workflows/plugin-check.yml
name: Plugin Check
on:
pull_request:
push:
branches:
- main
jobs:
plugin-check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v7
- name: Run plugin check
uses: wordpress/plugin-check-action@v1

Ha a bővítményed buildlépést igényel, a build-dir mondja meg, melyik mappát vizsgálja. A categories, az exclude-directories és az exclude-checks sortöréssel elválasztott listát vár:

.github/workflows/plugin-check.yml
- name: Run plugin check
uses: wordpress/plugin-check-action@v1
with:
build-dir: './tmp-build/sajat-bovitmeny'
categories: |
security
performance

Az action alapból minden kategóriát lefuttat. A kódolási szabványokat a PHPCS külön ellenőrzi; ha már használod, a Plugin Check PHPCS-alapú ellenőrzéseit kihagyhatod az exclude-checks listával.

  • Hamis riasztás előfordul. A PHPCS-találatokat a kódban megjegyzéssel kihagyhatod, a téves találatot pedig a GitHub-tárolóban jelentheted.
  • Ne éles oldalon futtasd. A futásidejű ellenőrzések kódot hajtanak végre.
  • A bővítmény más funkciói (a Plugin Namer, az SVN-ellenőrző és az MI-alapú elemzés) nem szükségesek az alap használathoz; részleteik a WordPress.org oldalon vannak.

Published:

We respect your privacy

We use cookies to improve your browsing experience and to analyse traffic. Analytics only starts if you allow it. Privacy policy, Cookie policy.

Cookie settings