Opis
Kontrola wtyczek to narzędzie do testowania, czy wtyczka spełnia wymagane standardy dla katalogu wtyczek WordPress.org. Dzięki niej można uruchomić większość kontroli używanych do nowych zgłoszeń i sprawdzić, czy wtyczka spełnia wymagania.
Ponadto narzędzie sygnalizuje naruszenia lub obawy związane z najlepszymi praktykami w tworzeniu wtyczek, od podstawowych wymagań, takich jak prawidłowe użycie funkcji obsługi języków, po dostępność, wydajność i najlepsze praktyki w zakresie bezpieczeństwa.
Testowanie może odbywać się za pomocą interfejsu użytkownika WP Admin lub WP-CLI:
- Aby sprawdzić wtyczkę za pomocą WP Admin, przejdź do menu Narzędzia > Plugin Check. Aby uzyskać dostęp do tego ekranu, musisz mieć możliwość zarządzania wtyczkami w swojej witrynie.
- Aby sprawdzić wtyczkę za pomocą WP-CLI, użyj polecenia
wp plugin check. Na przykład, aby sprawdzić wtyczkę „Hello Dolly”:wp plugin check hello.php.- Pamiętaj, że domyślnie podczas korzystania z WP-CLI można przeprowadzać tylko sprawdzanie statyczne. Aby uwzględnić również kontrole w czasie wykonywania, na razie trzeba skorzystać z obejścia, używając argumentu
--requirew WP-CLI, żeby ręcznie załadować plikcli.phpz katalogu narzędzia do sprawdzania wtyczek, zanim WordPress się załaduje. Na przykład:wp plugin check hello.php --require=./wp-content/plugins/plugin-check/cli.php - Możesz użyć dowolnej ścieżki lub adresu URL, aby sprawdzić wtyczkę. Na przykład, aby sprawdzić wtyczkę z adresu URL:
wp plugin check https://example.com/plugin.ziplub do sprawdzenia wtyczki ze ścieżki:wp plugin check /path/to/plugin.
- Pamiętaj, że domyślnie podczas korzystania z WP-CLI można przeprowadzać tylko sprawdzanie statyczne. Aby uwzględnić również kontrole w czasie wykonywania, na razie trzeba skorzystać z obejścia, używając argumentu
Sprawdzenia są podzielone na kilka kategorii, dzięki czemu możesz dostosować, jakie rodzaje sprawdzeń chcesz przeprowadzać w wtyczce.
Pamiętaj, że wtyczka nie zastępuje jeszcze ręcznego procesu weryfikacji, ale może pomóc przyspieszyć proces zatwierdzania wtyczki do repozytorium wtyczek WordPress.org, a także pozwoli uniknąć niektórych typowych błędów.
Nawet jeśli nie planujesz umieszczać swojej wtyczki w katalogu WordPress.org, warto skorzystać z narzędzia Kontrola wtyczek, żeby upewnić się, że twoja wtyczka spełnia podstawowe wymagania i jest zgodna z najlepszymi praktykami dotyczącymi wtyczek WordPressa.
Narzędzie do nazywania wtyczek
Plugin Check zawiera teraz narzędzie Plugin Namer oparte na sztucznej inteligencji (dostępne pod adresem Narzędzia > Plugin Check Namer), które pomaga autorom wtyczek ocenić nazwy wtyczek przed ich zgłoszeniem. Narzędzie to sprawdza:
- Podobieństwo do istniejących wtyczek w katalogu WordPress.org
- Potencjalne konflikty dotyczące znaków towarowych z markami powszechnie znanymi
- Zgodność z wytycznymi dotyczącymi nazewnictwa wtyczek WordPressa
- Problemy z nazwami zbyt ogólnymi lub zbyt szerokimi
Wtyczka Plugin Namer daje natychmiastową informację zwrotną wraz z praktycznymi sugestiami, pomagając ci wybrać jasną, unikatową i zgodną z wytycznymi nazwę, która wyróżni się w katalogu. Wymaga WordPressa w wersji 7.0 lub nowszej oraz skonfigurowanych łączników AI.
Ważne: narzędzie Plugin Namer ma charakter wyłącznie orientacyjny i nie jest wiążące. Wszystkie decyzje dotyczące nazw wtyczek podlegają ostatecznej weryfikacji i zatwierdzeniu przez recenzentów z zespołu do spraw wtyczek.
Sprawdź SVN
Kontrola wtyczek zawiera też narzędzie Sprawdź SVN (dostępne przez Narzędzia > Sprawdź SVN wtyczki), które przeszukuje repozytorium SVN wtyczki na WordPress.org pod kątem nieoczekiwanych plików, folderów i archiwów zip. Pomaga to autorom i recenzentom wtyczek upewnić się, że przed lub po wydaniu wtyczki w katalogach trunk, tags i assets znajdują się wyłącznie te pliki, które powinny tam być.
Sprawdzenia zweryfikowane przez sztuczną inteligencję
Gdy włączona jest analiza sztucznej inteligencji, Plugin Check może przejrzeć wybrane wyniki, żeby pomóc zidentyfikować potencjalne fałszywe alarmy. Powiązane problemy są grupowane i analizowane z wykorzystaniem podpowiedzi dostosowanych do rodzaju sprawdzania, z uwzględnieniem otaczającego kodu jako kontekstu. Przegląd AI nie usuwa ani nie zmienia oryginalnych wyników, ale dodaje dodatkowe podsumowanie, które wskazuje, które wyniki mogą wymagać sprawdzenia przez człowieka przed podjęciem działań.
Instalacja
Instalacja w WordPressie
- Przejdź do Wtyczki > Dodaj nową.
- Wyszukaj Kontrola wtyczek.
- Zainstaluj i włącz wtyczkę Kontrola wtyczek.
Instalacja ręczna
- Prześlij cały folder
grecaptchado katalogu/wp-content/plugins/. - Przejdź do Wtyczki.
- Włącz wtyczkę Kontrola wtyczek .
Najczęściej zadawane pytania
-
Czy mogę pomóc w tworzeniu wtyczki?
-
Rozwój wtyczki jest obsługiwany przez GitHub, wszelkie problemy lub pull requesty proszę zgłaszać w repozytorium githuba.
-
A co, jeśli wtyczka zgłosi coś, co jest w porządku, jako „błąd” albo „ostrzeżenie”?
-
Staramy się tworzyć wtyczkę tak, żeby zminimalizować liczbę fałszywych alarmów, ale jeśli jakiś znajdziesz, zgłoś to w repozytorium GitHuba. W przypadku niektórych fałszywych alarmów, na przykład tych wykrywanych przez PHPCodeSniffer, możesz dodać adnotację do kodu, żeby zignorować konkretny problem w konkretnej linii.
-
Dlaczego oznacza coś jako złe?
-
Nie oznacza to „złych” rzeczy jako takich. Sprawdzanie wtyczek zostało zaprojektowane jako niedoskonały sposób testowania zgodności z wytycznymi dotyczącymi przeglądu wtyczek. Nie wszystkie wtyczki muszą być zgodne z tymi wytycznymi. Celem narzędzia sprawdzającego jest zapewnienie, że wtyczki przesłane do centralnego repozytorium wtyczek WordPress.org spełniają najnowsze standardy wtyczek WordPress i będą działać w wielu różnych witrynach.
Wiele witryn korzysta z własnych wtyczek i jest to całkowicie w porządku. Ale wtyczki, które są przeznaczone do użytku na wielu różnych rodzajach witryn przez społeczeństwo, muszą osiągnąć pewien minimalny poziom, aby zapewnić prawidłowe funkcjonowanie w wielu różnych środowiskach. Wytyczne Plugin Review zostały stworzone z myślą o tym celu.
Proces sprawdzania wtyczek nie jest doskonały i nigdy nie będzie. Jest to tylko narzędzie pomagające autorom wtyczek lub każdemu, kto chce zwiększyć możliwości swojej wtyczki. Wszystkie wtyczki przesłane do WordPress.org są ręcznie sprawdzane przez zespół ekspertów. Automatyczny tester wtyczek ma być jedynie użytecznym narzędziem, a nie absolutnym systemem pomiaru.
-
Czy wtyczka musi przejść wszystkie testy, żeby została zatwierdzona w katalogu wtyczek WordPress.org?
-
Żeby wtyczka została zatwierdzona w katalogu wtyczek WordPress.org, zazwyczaj musi przejść wszystkie testy w kategorii „Repozytorium wtyczek”. Pozostałe testy są dodatkowe i nie zawsze trzeba je zaliczyć.
Przejście kontroli w tym narzędziu prawdopodobnie pomaga osiągnąć płynność w procesie przeglądu wtyczek, ale nie gwarantuje, że wtyczka zostanie zatwierdzona w katalogu wtyczek WordPress.org.
Recenzje
Kontrybutorzy i deweloperzy
„Kontrola wtyczek (PCP)” jest oprogramowaniem open source. Poniższe osoby miały wkład w rozwój wtyczki.
ZaangażowaniWtyczka „Kontrola wtyczek (PCP)” została przetłumaczona na 16 języków. Podziękuj tłumaczom za ich wkład.
Przetłumacz wtyczkę “Kontrola wtyczek (PCP)” na swój język.
Interesuje cię rozwój wtyczki?
Przeglądaj kod, sprawdź repozytorium SVN lub czytaj dziennik rozwoju przez RSS.
Rejestr zmian
2.1.0
- Ulepszenie – dodano narzędzie SVN Checker do wykrywania nieoczekiwanych plików, folderów i archiwów ZIP w repozytoriach SVN wtyczek.
- Ulepszenie – dodano sprawdzanie raportowania błędów PHP, żeby wykrywać zmiany w ustawieniach raportowania błędów PHP wprowadzane w środowisku produkcyjnym.
- Ulepszenie – dodano sprawdzanie dostawcy AI, aby polecać klienta AI dla WordPressa.
- Ulepszenie – sprawdź każdą zależność
Wymaga wtyczekosobno w katalogu wtyczek WordPress.org. - Ulepszenie – zastosuj różne style wizualne dla różnych radzajów zgłoszeń w wynikach.
- Poprawka – zachowaj znaki Unicode w wyeksportowanych wynikach.
- Poprawka – naprawiono funkcje WordPressa, które zostały po cichu usunięte z generatora danych „since”.
- Poprawka – oddzielenie wywołań AJAX w interfejsie administratora i usunięcie zbędnych wartości zwracanych.
- Zadanie – dodaj funkcje AI i dokumentację konfiguracyjną.
- Zadanie – zaktualizuj funkcję WordPressa na podstawie zbioru danych.
- Zadanie – zaktualizowano zależności związane z programowaniem i CI.
2.0.0
- Ulepszenie – dodano sprawdzanie zgodności funkcji WordPressa, żeby sygnalizować użycie funkcji niedostępnych w minimalnej wersji WordPressa zadeklarowanej przez wtyczkę.
- Ulepszenie – dodano sprawdzanie zapisu plików, żeby wykrywać wtyczki zapisujące dane w folderze wtyczek zamiast w katalogu „uploads” lub w bazie danych.
- Ulepszenie – dodano funkcję wykrywania fałszywych alarmów generowanych przez AI w trybie wsadowym, z podpowiedziami dostosowanymi do konkretnych testów oraz możliwością wyboru modelu AI dla WP-CLI.
- Ulepszenie – dodano obsługę eksportu wyników sprawdzania do formatu CTRF.
- Ulepszenie – dodano podsumowanie liczby błędów do interfejsu użytkownika Plugin Check.
- Ulepszenie – poprawiono wykrywanie bezpośredniego dostępu do plików w przypadku plików typu bibliotecznego.
- Ulepszenie – dostosowano sprawdzanie trybu aktualizacji.
- Poprawka – poprawiono sprawdzanie poprawności nagłówka URI dla adresów URL wtyczek z serwisu WordPress.org.
- Poprawka – ulepszono wykrywanie kompatybilności funkcji WordPressa, żeby uniknąć fałszywych alarmów związanych z serializacją w PHP.
- Poprawka – uwzględnienie funkcji
wp_supports_ai()oraz filtrowania modeli obsługujących tekst w narzędziu Plugin Namer. - Poprawka – wyświetlanie wykorzystania tokenów w wynikach wtyczki Plugin Namer.
- Poprawka – uznano EUPL za licencję zgodną z GPL.
- Poprawka – ulepszono tłumaczania etykiet z przedrostkiem emoji.
- Poprawka – zaktualizowano odnośniki do repozytorium sniffera PHPCS.
- Poprawka – zaktualizowano dokumentację dotyczącą kontroli środowiska uruchomieniowego WP-CLI.
- Zadanie – dodano automatyczne generowanie danych o zgodności funkcji WordPressa.
- Zadanie – dodano informację o wykorzystaniu sztucznej inteligencji do szablonu pull requestu.
- Zadanie – dodano instrukcje dla agenta programującego AI.
- Zadanie – usunięto ostrzeżenia dotyczące konfiguracji środowiska wp-env dla wersji rozwojowej i testowej.
- Zadanie – wyświetlanie przycisku podglądu „WordPress Playground” w zgłoszeniach pull request.
- Zadanie – zaktualizowano zależności związane z programowaniem i CI.
1.9.0
- Ulepszenie – skorzystano z wbudowanych modułów AI w WordPressie 7.0.
- Ulepszenie – opcja „Dodaj linki do zewnętrznych menu administracyjnych” służy do wykrywania zewnętrznych adresów URL w menu administracyjnych najwyższego poziomu.
- Ulepszenie – dodano i udoskonalono sprawdzanie zgodności metadanych bloków, tak aby wymagało
apiVersion3+ w celu zapewnienia zgodności edytora iframe z WordPressem 7.0+, w tym dostosowano poziom ważności w zależności od trybu. - Ulepszenie – poprawiono wykrywanie narzędzia Plugin Updater, aby rozpoznawać wywołania funkcji Plugin Update Checker (PUC).
- Ulepszenie – uznano WTFPL za licencję zgodną z GPL.
- Poprawka – ulepszono sprawdzanie poprawności adresów URL darowizn przez PayPal w przypadku złożonych ciągów zapytania.
- Poprawka – sprawdzono czy funkcja „AI Check” korzysta z ustawionych preferencji modelu.
- Poprawka – wyświetlanie jasnego komunikatu o błędzie w Plugin Namer, gdy status łącznika AI jest niedostępny.
- Poprawka – zaktualizowano odnośnik do strony ustawień łączników Plugin Namer.
- Poprawka – zmieniono poziomu powagi sprawdzania
load_plugin_textdomain()z błędu na ostrzeżenie. - Poprawka – poprawiono sprawdzanie autorów w pliku readme w przypadku obecności przecinków na końcu.
- Poprawka – zmieniono sprawdzanie plików Markdown, tak żeby nie uwzględniało wielkości liter.
- Poprawka – udoskonalono komunikaty o błędach w trybie „escaping sniff”, żeby były bardziej zrozumiałe.
- Zadanie – zaktualizowano zależności programistyczne, w tym
@wordpress/scripts,simple-git,basic-ftp,svgo,immutableoraz@wp-playground/cli. - Poprawka – zaktualizowano nazwy członków zespołu wtyczek WordPress.org, żeby zachować spójność.
1.8.0
- Ulepszenie – dodano narzędzie „Plugin Namer” oparte na sztucznej inteligencji, które ocenia nazwy wtyczek pod kątem konfliktów związanych ze znakami towarowymi oraz zgodności z najlepszymi praktykami w zakresie nazewnictwa.
- Ulepszenie – dodano funkcję wykrywania plików instrukcji AI, która pozwala zidentyfikować pliki konfiguracyjne narzędzi AI oraz katalogi przeznaczone wyłącznie do celów programistycznych.
- Ulepszenie – dodano obsługę eksportowania wyników sprawdzania w formatach CSV, JSON i Markdown.
- Ulepszenie – dodano filtr typu sprawdzania, który pozwala filtrować wyniki według błędów i ostrzeżeń.
- Ulepszenie – dodano sprawdzanie bezpośredniego dostępu do plików, żeby zapewnić prawidłową weryfikację bezpieczeństwa przy użyciu stałej ABSPATH.
- Ulepszenie – dodano sprawdzanie, czy nagłówek „Tested up to” w pliku readme.txt nie jest niezgodny z tym w nagłówku wtyczki.
- Ulepszenie – zaktualizowano sprawdzanie znaków towarowych, by wyeliminować wyjątki dotyczące akronimów i zwiększyć elastyczność.
- Ulepszenie – dodano funkcję sprawdzającą użycie heredoc, żeby wykrywać i ograniczać jego stosowanie (nowdoc jest dozwolone).
- Poprawka – zaktualizowano schemat integracji z Playgroundem, żeby zapewnić zgodność.
- Poprawka – wymuszanie prawidłowego wykrywania uproszczonej nazwy wtyczki w WP-CLI.
1.7.0
- Ulepszenie – dodano sprawdzanie obecności zminifikowanych plików, żeby wykrywać i odpowiednio obsługiwać zminifikowane pliki w wtyczkach.
- Ulepszenie – dodano sprawdzanie, czy funkcja wp_verify_nonce() nie jest używana w sposób niezabezpieczony, żeby poprawić weryfikację bezpieczeństwa.
- Ulepszenie – dodano monitorowanie bezpośrednich zapytań do bazy danych, żeby wykrywać bezpośrednie wywołania bazy danych bez korzystania z funkcji WordPressa.
- Ulepszenie – dodano sprawdzanie prefiksów, żeby zapewnić poprawne stosowanie prefiksów w nazwach funkcji i klas.
- Ulepszenie – zaktualizowano wyrażenie regularne do wykrywania adresów localhost, aby poprawić wykrywanie adresów URL localhost, w tym domen *.local.
- Ulepszenie – wyłączono sprawdzanie w czasie wykonywania, gdy zdefiniowano własne stałe tabele użytkownika, aby zapewnić wyższą zgodność.
- Ulepszenie – dodano sprawdzanie niedozwolonych funkcji, aby wykrywać użycie funkcji PHP, których nie wolno używać.
- Ulepszenie – dodano nową kontrolę funkcji `wp_safe_redirect`, żeby zachęcić do korzystania z bezpiecznej funkcji przekierowań WordPressa.
- Ulepszenie – poprawiono sprawdzanie niezgodności domen tekstowych, żeby lepiej weryfikować tłumaczenia.
- Ulepszenie – wykrywanie odnośników, które zachęcają do wystawiania recenzji z pięcioma gwiazdkami, żeby egzekwować wytyczne katalogu wtyczek.
- Ulepszenie – dodano „The Unlicense” do sprawdzania zgodności licencji z GPL.
- Ulepszenie – poprawiono kod analizujący ruch na localhost, aby zapewnić dokładniejsze wykrywanie.
- Poprawka – ignorowanie folderów „vendor_prefixed” i „vendor-prefixed” podczas sprawdzania, żeby uniknąć fałszywych alarmów.
- Poprawka – obsługa ewentualnego pustego elementu w skanerze, żeby uniknąć ostrzeżeń PHP.
- Poprawka – ukrycie komunikatów o błędach w skanerze, żeby wynik był bardziej przejrzysty.
- Poprawka – wywołanie metody ReflectionProperty::setAccessible() tylko w starszych wersjach PHP, żeby zapewnić lepszą zgodność z PHP 8.1+.
- Poprawka – zapobieganie usuwaniu własnych tabel WordPressa podczas czyszczenia środowiska testowego.
1.6.0
- Ulepszenie – dodano obsługa ścisłego formatu wyjściowego dla poleceń CLI.
- Ulepszenie – poprawiono sprawdzanie odnośnika darowizn w pliku readme.
- Ulepszenie – poprawiono sprawdzanie informacji w narzędziach Version.
- Ulepszenie – poprawiono sprawdzanie poprawności adresów URL w polach nagłówka wtyczki.
- Ulepszenie – poprawiono pliki zestawów reguł.
- Ulepszenie – podwyższono poziom ważności błędów związanych z nieprawidłową domeną URI wtyczki oraz nieprawidłowym opisem wtyczki w nagłówku wtyczki.
- Ulepszenie – usunięto przestarzałą regułę „CallTimePassByReference”.
- Ulepszenie – zablokowano użycie znaków specjalne w domenie tłumaczenia.
- Ulepszenie – dodano parser plików readme, żeby uniknąć konfliktów z wordpress.org. Jeśli to możliwe, używaj parsera plików readme z dotorg.
- Ulepszenie – dodano radę nie używania funkcji
load_plugin_textdomainwe wtyczkach, bo na wordpress.org nie jest to konieczne. - Ulepszenie – podwyższono poziomu ważności braku nagłówków w pliku readme.
- Ulepszenie – dodano informację „przetestowano tylko do wersji mniejszej” tylko wtedy, gdy jest to aktualna wersja główna.
- Ulepszenie – dodano odnośnik na stronie wtyczek, który pozwala sprawdzić stan wtyczki.
- Poprawka – folder z dynamiczną treścią WP.
- Poprawka – naprawiono test dotyczący znaków specjalnych w nazwach plików, który sprawiał użytkownikom kłopoty po sklonowaniu.
- Poprawka – usunięto Image_Functions_Check, bo wzbudzało fałszywe alarmy.
- Poprawka – poprawiono oznaczaniu wersji WordPressa 10+ jako błędu podczas sprawdzania w sekcji „Przetestowano do”.
1.5.0
- Ulepszenie – poprawiono sprawdzanie poprawności adresów URL pod kątem zduplikowanych protokołów.
- Ulepszenie – zaktualizowano poziom ważności błędów związanych z nieprawidłowymi domenami tekstowymi oraz kodami błędów tłumaczeń.
- Ulepszenie – problemy wykrywane przez funkcję sprawdzania autora adresu URL są teraz oznaczane jako „ERROR” zamiast „WARNING”.
- Ulepszenie – dodano nową weryfikację wersji drugorzędnej w module „Tested up”.
- Ulepszenie – sprawdzanie, czy nagłówki nie są puste podczas sprawdzania nagłówków „requires”.
- Ulepszenie – dodano opcję eksperymentalną w panelu administracyjnym.
- Ulepszenie – dodano test Behat do sprawdzania funkcji eksperymentalnych z dodatków.
- Ulepszenie – poprawiono sprawdzanie licencji dla Apache’a.
- Ulepszenie – wyświetl ostrzeżenie, jeśli wymagane nagłówki w pliku readme i nagłówku wtyczki nie są identyczne.
- Poprawka – usunięto ostrzeżenia dotyczącego dynamicznego wywołania zwrotnego podczas sprawdzania ustawień rejestru.
- Poprawka – odwołania do niewłaściwych tabel bazy danych na podstronach w trybie Multisite.
1.4.0
- Enhancement – Allow ISC license in the License check.
- Enhancement – Added check for use of settings with sanitization callback.
- Enhancement – Added –ignore-codes in CLI to introduce a mechanism to ignore specific error codes.
- Enhancement – New utils for fetching necessary version info details.
- Enhancement – Added check for unsupported plugin name in plugin header field.
- Enhancement – Segregate the severity of i18n checks. Make sure that is giving errors in the right context.
- Enhancement – Provide more detailed information about checks when the README does not include a tested version or a list of contributors.
- Enhancement – Added rules from WPCS to prevent issues with content being sent before headers and warn about the use of Call-time pass-by-reference.
- Enhancement – Give more context in the error of check wrong named files.
- Enhancement – Simplified PHPUnit setup. Now it does not depend of running inside a WordPress installation.
- Enhancement – Added new check for restricted contributors.
- Fix – Delete transients in unit tests to avoid false positives.
- Fix – Incorrect Tested up to version comparison will make error for two major versions up.
- Fix – Excluded the use of functions file_get_contents and file_put_contents in the check to prevent false positives.
- Fix – Duplicated error message in the check for wrong named files.
- Fix – Use of Json encode wasn’t firing the error message.
- Fix – Change error type of NonEnqueuedImage in ImageFunctions sniff from ERROR to WARNING.
1.3.1
- Enhancement – Add version utilities.
- Fix – Escape error messages.
- Fix – Renamed error type to ERROR_LOW_SEVERITY and WARNING_LOW_SEVERITY.
- Fix – Fix PHPCS checks on unwritable filesystems.
1.3.0
- Enhancement – Update disallowed domains for Plugin URI check.
- Enhancement – Added new checks for Plugin Header fields: missing plugin description, missing plugin version and invalid plugin version.
- Enhancement – New check for validation of donate link in the readme file.
- Enhancement – Increased severity for wrong Plugin Requires.
- Enhancement – Added check Restrict parse_str() without second argument.
- Enhancement – New check for Disallow usage of HEREDOC and NOWDOC.
- Enhancement – Added acronyms allowed in Trademark checks.
- Enhancement – Added option in CLI to add low severity errors and warnings.
- Enhancement – Change error type for License check error codes.
- Enhancement – Always use prefixed tables during runtime check requests.
- Enhancement – Created a new class for checking licenses.
- Enhancement – Added support for MPL-2.0 license.
- Enhancement – Implement gherkin linter in GH action.
- Enhancement – Update check for Contributors in markdown readme files.
- Enhancement – CLI: Fix confusing runtime environment setup order.
- Enhancement – Allow custom checks to provide installed_paths.
- Enhancement – Improved the use of localhost URLs in the Plugin.
- Enhancement – Documented checks in the plugin.
- Enhancement – Increased severity for Code obfuscation checks.
- Enhancement – Differentiate between non-existent readme and default readme file.
- Enhancement – Encourage developers to use native functions for loading images in templates.
- Enhancement – Added a check for not allowing include libraries already in WordPress core.
- Enhancement – Warning for usage of query_posts() in favor of WP_Query.
- Fix – Fix for the local environment is set up before testing.
- Fix – Fix addon checks not being executed when running runtime checks.
- Fix – Allow
defaultas a text domain in the text domain check. - Fix – Allow GitHub URLs in the Plugin URI field.
- Fix – Don’t flag Apache license. It’s allowed in the WordPress.org plugin repository.
- Fix – Removes the path before the plugin, so it won’t affect to badly named files.
1.2.0
- Enhancement – Added a check for badly used names in files.
- Enhancement – Increased severity for
BacktickOperator,DisallowShortOpenTag,DisallowAlternativePHPTags,RestrictedClasses, andRestrictedFunctions. - Enhancement – Added security checks to the Plugin repository category.
- Enhancement – Allowed
runtime-setin code sniffer checks. - Enhancement – Changed warnings to errors in plugin header checks.
- Enhancement – Detect forbidden plugin headers such as repository URIs in the Directory.
- Enhancement – Added a new check for development functions that are not allowed in final plugins.
- Enhancement – Created new images and icons for the plugin.
- Enhancement – Introduced a slug argument in the CLI.
- Enhancement – Added a check for discouraged PHP functions.
- Enhancement – Added validation for Contributors in the readme file.
- Enhancement – Added a warning for mismatched plugin names in the plugin header and readme file.
- Enhancement – Checked for validation of Plugin Header fields: Name, Plugin URI, Description, Author URI, Requires at least, Requires PHP, and Requires Plugins.
- Enhancement – Added a warning if the „Tested up to” value in the readme file exceeds the released version of WordPress.
- Fix – Display a success message if no errors or warnings are found.
- Fix – Made table results responsive.
- Fix – Prevent proceeding to the next check if the Stable Tag value is set to
trunk. - Fix – Allow runtime initialization even when only add-on checks are requested.
- Fix – Fixed an SPDX warning for the
GPL version 3license. - Fix – Prevent runtime checks in the CLI context when they cannot be used.
1.1.0
- Feature – New
Non_Blocking_Scripts_Check(non_blocking_scripts) runtime check to warn about enqueued scripts that use neitherdefernorasync. - 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) andEnqueued_Resources_Check(enqueued_resources) performance checks. - Enhancement – Improved readme check and added a new
wp_plugin_check_ignored_readme_warningsfilter. - Enhancement – New
wp_plugin_check_default_categoriesfilter to change the categories which are selected by default. - Enhancement – New
wp_plugin_check_ignore_filesfilter to allow ignoring specific files. - Fix – Correct detection of readme files in Windows by normalizing file paths.
1.0.1
- Fix – Add missing
test-contentfolder needed for runtime checks. - Fix – Do not send emails when setting up test environment.
- Fix – Prevent PHP warning when the
argvvariable isn’t set.
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
- Usprawnienie – yżycie wersji 3.8.0 biblioteki PHP_CodeSniffer, odchodząc od
squizlabs/PHP_CodeSnifferna rzeczPHPCSStandards/PHP_CodeSniffer. - Poprawka – sprawdzenie czy wtyczka działa zgodnie z oczekiwaniami w środowisku WP playground, aby umożliwić recenzentom korzystanie z PCP. Podziękowania dla @tellyworth.
- Poprawka – niezdefiniowany klucz tablicy „argv” podczas uruchamiania sprawdzania wtyczki w niektórych środowiskach. Podziękowania dla @afragen. #340.
0.2.2
- Ulepszenie – włączono obsługę serwerów Windows.
- Ulepszenie – unikaj bezpośredniego korzystania z PHP CLI, co umożliwia programistom wtyczek korzystanie z PCP w różnych nowych środowiskach.
- Poprawka – usunięto zależności od funkcji
shell_execiexec, co umożliwia twórcom wtyczek korzystanie z PCP w różnych nowych środowiskach. - Poprawka – naprawiono problemom z ostrzeżeniem parsera Readme związanym z
contributor_ignoredpodczas uruchamiania sprawdzania poza WP.org. Podziękowania dla @dev4press. #276. - Poprawka – usunięto dodatkową kropkę na końcu zdania dla ostrzeżenia phar. Podziękowania dla @pixolin. #275.
0.2.1
- Dodano odnośnik „Wyświetl w edytorze kodu” pod każdym błędem lub ostrzeżeniem PHPCS. Props @EvanHerman, @westonruter, @felixarntz, @mukeshpanchal27 #262.
- Poprawka – upewnij się, że
readme.txtma priorytet nadreadme.md, gdy oba są obecne. Props @bordoni, @afragen #258. - Poprawka – upewnij się, że sprawdzanie PHPCS działa nawet wtedy, gdy plik binarny PHPCS nie jest wykonywalny. Props @bordoni, @shawn-digitalpoint, @mrfoxtalbot #254.
- Poprawka – zmiany w Readme i literówki. Props @aaronjorbin. #261.
- Poprawka – długie linie kodu ze sprawdzaniem PHPCS nie rozszerzają się już ponad rozmiar powiadomienia. Props @bordoni, @felixarntz. #263.
- Poprawka – upewnij się, że mamy zgodność z PHP 7.2, usuń końcowy przecinek. Props @bordoni, @leoloso. #265.
- Poprawka – uwzględnij wszystkie ciągi, które zostały pominięte w poprzedniej wersji. Props @bordoni, @pixolin. #270.
0.2.0
- Funkcja – dodano modyfikację ścieżki binarnej PHP używanej przez wtyczkę za pomocą stałej
PLUGIN_CHECK_PHP_BIN. - Funkcja – dołączono sprawdzanie użycia
ALLOW_UNFILTERED_UPLOADSw dowolnych plikach PHP – Podziękowania dla EvanHermana at #45. - Funkcja – dodano sprawdzanie obecności plików aplikacji (
.a,.bin,.bpk,.deploy,.dist,.distz,.dmg,.dms,.DS_Store,.dump,.elc,.exe,.iso,.lha,.lrf,.lzh,.o,.obj,.phar,.pkg,.sh, ’.so`) – Podziękowania dla EvanHermana at #43. - Funkcja – dodano sprawdzanie obecności pliku readme.txt lub readme.md – Podziękowanie dla EvanHermana na #42.
- Poprawka – sprawdzenie, że parsowanie pliku readme jest włączone poprawnie, gdy obecny jest plik readme.md lub readme.txt. Podziękowania dla Bordoni #52.
- Usprawnienie – wyłącz funkcje
move_uploaded_file,passthru,proc_open– Podziękowania dla alexsanford w #50. - Ulepszenie – zmieniono typ wiadomości dotyczący korzystania z funkcji, które WordPress już zawiera, z ostrzeżenia na błąd. P{odziękowania dla Davidperezgar #18
- Ulepszenie – zmień typ komunikatu dla nieprawidłowego użycia tagu Stable z Powiadomienie/Ostrzeżenie na Błąd. Podziękowania dla davidperezgar w #3.
[0.1] 2011-09-04
Oryginalna wersja narzędzia do sprawdzania wtyczek, a nie wydana wersja wtyczki, a dziennik zmian jest tutaj tylko do celów historycznych.
