PHPackages                             lewebsimple/wpcs - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. lewebsimple/wpcs

ActivePhpcodesniffer-standard

lewebsimple/wpcs
================

PHP\_CodeSniffer rules (sniffs) to enforce WordPress coding conventions

v2.3.0.14(2y ago)028MITPHPPHP &gt;=5.4

Since Dec 11Pushed 2y agoCompare

[ Source](https://github.com/lewebsimple/wpcs)[ Packagist](https://packagist.org/packages/lewebsimple/wpcs)[ RSS](/packages/lewebsimple-wpcs/feed)WikiDiscussions develop Synced 1mo ago

READMEChangelogDependencies (5)Versions (60)Used By (0)

[![Latest Stable Version](https://camo.githubusercontent.com/9c7abf08ab7e770a48323726911100503f6ac48bee12aa10f7bc3f4f260fa9ac/68747470733a2f2f706f7365722e707567782e6f72672f77702d636f64696e672d7374616e64617264732f777063732f762f737461626c65)](https://packagist.org/packages/wp-coding-standards/wpcs)[![Release Date of the Latest Version](https://camo.githubusercontent.com/d4b503db846e8ddeefca903e671f6bdd66ec5a776e1ca732898e450d0012084a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652d646174652f576f726450726573732f576f726450726573732d436f64696e672d5374616e64617264732e7376673f6d61784167653d31383030)](https://github.com/WordPress/WordPress-Coding-Standards/releases)🚧 [![Latest Unstable Version](https://camo.githubusercontent.com/36aaf6b5002a9c809356c5cef488554c466dd55b6d898f792039151ad2f2ee3c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f756e737461626c652d6465762d2d646576656c6f702d6536383731382e7376673f6d61784167653d32343139323030)](https://packagist.org/packages/wp-coding-standards/wpcs#dev-develop)[![Last Commit to Unstable](https://camo.githubusercontent.com/f752e2b8a0a856cd59718e8946ca30122a4ee49be0524bc13936f77870e0c37a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6173742d636f6d6d69742f576f726450726573732f576f726450726573732d436f64696e672d5374616e64617264732f646576656c6f702e737667)](https://github.com/WordPress/WordPress-Coding-Standards/commits/develop)

[![Minimum PHP Version](https://camo.githubusercontent.com/ef530100a794355ab7dafd0ea42cb502c7ce7de2619923f4e315a21c45bb72e3/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f77702d636f64696e672d7374616e64617264732f777063732e7376673f6d61784167653d33363030)](https://packagist.org/packages/wp-coding-standards/wpcs)[![Tested on PHP 5.4 to 7.4 snapshot](https://camo.githubusercontent.com/ebde7f59659f8c441a142cb7cd78c799619990ab2f902a9e499600553c56ab67/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7465737465642532306f6e2d504850253230352e34253230253743253230352e35253230253743253230352e36253230253743253230372e30253230253743253230372e31253230253743253230372e32253230253743253230372e33253230253743253230372e34736e617073686f742d677265656e2e7376673f6d61784167653d32343139323030)](https://github.com/WordPress/WordPress-Coding-Standards/actions/workflows/unit-tests.yml)[![Basic QA checks](https://github.com/WordPress/WordPress-Coding-Standards/actions/workflows/basic-qa.yml/badge.svg)](https://github.com/WordPress/WordPress-Coding-Standards/actions/workflows/basic-qa.yml)[![Unit Tests](https://github.com/WordPress/WordPress-Coding-Standards/actions/workflows/unit-tests.yml/badge.svg)](https://github.com/WordPress/WordPress-Coding-Standards/actions/workflows/unit-tests.yml)

[![License: MIT](https://camo.githubusercontent.com/6c96169d70553a12b6359d48d4dead2334fb276adcb31143bfa52811145560f5/68747470733a2f2f706f7365722e707567782e6f72672f77702d636f64696e672d7374616e64617264732f777063732f6c6963656e7365)](https://github.com/WordPress/WordPress-Coding-Standards/blob/develop/LICENSE)[![Total Downloads](https://camo.githubusercontent.com/b383b5a52edef2dbb9edcd94414699b935fab01c0f19b34b8f37df4f14826c92/68747470733a2f2f706f7365722e707567782e6f72672f77702d636f64696e672d7374616e64617264732f777063732f646f776e6c6f616473)](https://packagist.org/packages/wp-coding-standards/wpcs/stats)[![Number of Contributors](https://camo.githubusercontent.com/e240d80dc3353f380442394047fe008602c813a3ba87589b2b34d5d10e7f5e08/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f636f6e7472696275746f72732f576f726450726573732f576f726450726573732d436f64696e672d5374616e64617264732e7376673f6d61784167653d33363030)](https://github.com/WordPress/WordPress-Coding-Standards/graphs/contributors)

WordPress Coding Standards for PHP\_CodeSniffer
===============================================

[](#wordpress-coding-standards-for-php_codesniffer)

- [Introduction](#introduction)
- [Project history](#project-history)
- [Installation](#installation)
    - [Requirements](#requirements)
    - [Composer](#composer)
    - [Standalone](#standalone)
- [Rulesets](#rulesets)
    - [Standards subsets](#standards-subsets)
    - [Using a custom ruleset](#using-a-custom-ruleset)
    - [Customizing sniff behaviour](#customizing-sniff-behaviour)
    - [Recommended additional rulesets](#recommended-additional-rulesets)
- [How to use](#how-to-use)
    - [Command line](#command-line)
    - [Using PHPCS and WPCS from within your IDE](#using-phpcs-and-wpcs-from-within-your-ide)
- [Running your code through WPCS automatically using CI tools](#running-your-code-through-wpcs-automatically-using-ci-tools)
- [Fixing errors or ignoring them](#fixing-errors-or-ignoring-them)
    - [Tools shipped with WPCS](#tools-shipped-with-wpcs)
- [Contributing](#contributing)
- [License](#license)

Introduction
------------

[](#introduction)

This project is a collection of [PHP\_CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer) rules (sniffs) to validate code developed for WordPress. It ensures code quality and adherence to coding conventions, especially the official [WordPress Coding Standards](https://make.wordpress.org/core/handbook/best-practices/coding-standards/).

Project history
---------------

[](#project-history)

- On 22nd April 2009, the original project from [Urban Giraffe](https://urbangiraffe.com/articles/wordpress-codesniffer-standard/) was packaged and published.
- In May 2011 the project was forked and [added](https://github.com/WordPress/WordPress-Coding-Standards/commit/04fd547c691ca2baae3fa8e195a46b0c9dd671c5) to GitHub by [Chris Adams](https://chrisadams.me.uk/).
- In April 2012 [XWP](https://xwp.co/) started to dedicate resources to develop and lead the creation of the sniffs and rulesets for `WordPress-Core`, `WordPress-VIP` (WordPress.com VIP), and `WordPress-Extra`.
- In May 2015, an initial documentation ruleset was [added](https://github.com/WordPress/WordPress-Coding-Standards/commit/b1a4bf8232a22563ef66f8a529357275a49f47dc#diff-a17c358c3262a26e9228268eb0a7b8c8) as `WordPress-Docs`.
- In 2015, [J.D. Grimes](https://github.com/JDGrimes) began significant contributions, along with maintenance from [Gary Jones](https://github.com/GaryJones).
- In 2016, [Juliette Reinders Folmer](https://github.com/jrfnl) began contributing heavily, adding more commits in a year than anyone else in the five years since the project was added to GitHub.
- In July 2018, version [`1.0.0`](https://github.com/WordPress/WordPress-Coding-Standards/releases/tag/1.0.0) of the project was released.

Installation
------------

[](#installation)

### Requirements

[](#requirements)

The WordPress Coding Standards require PHP 5.4 or higher and [PHP\_CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer) version **3.7.2** or higher.

### Composer

[](#composer)

Standards can be installed with the [Composer](https://getcomposer.org/) dependency manager:

```
composer create-project wp-coding-standards/wpcs --no-dev

```

Running this command will:

1. Install WordPress standards into `wpcs` directory.
2. Install PHP\_CodeSniffer.
3. Register WordPress standards in PHP\_CodeSniffer configuration.
4. Make `phpcs` command available from `wpcs/vendor/bin`.

For the convenience of using `phpcs` as a global command, you may want to add the path to the `wpcs/vendor/bin` directory to a `PATH` environment variable for your operating system.

#### Installing WPCS as a dependency

[](#installing-wpcs-as-a-dependency)

When installing the WordPress Coding Standards as a dependency in a larger project, the above mentioned step 3 will not be executed automatically.

There are two actively maintained Composer plugins which can handle the registration of standards with PHP\_CodeSniffer for you:

- [composer-phpcodesniffer-standards-plugin](https://github.com/higidi/composer-phpcodesniffer-standards-plugin)
- [phpcodesniffer-composer-installer](https://github.com/DealerDirect/phpcodesniffer-composer-installer):"^0.6"

It is strongly suggested to `require` one of these plugins in your project to handle the registration of external standards with PHPCS for you.

### Standalone

[](#standalone)

1. Install PHP\_CodeSniffer by following its [installation instructions](https://github.com/squizlabs/PHP_CodeSniffer#installation) (via Composer, Phar file, PEAR, or Git checkout).

    Do ensure that PHP\_CodeSniffer's version matches our [requirements](#requirements), if, for example, you're using [VVV](https://github.com/Varying-Vagrant-Vagrants/VVV).
2. Clone the WordPress standards repository:

    ```
     git clone -b master https://github.com/WordPress/WordPress-Coding-Standards.git wpcs

    ```
3. Add its path to the PHP\_CodeSniffer configuration:

    ```
     phpcs --config-set installed_paths /path/to/wpcs

    ```

    **Pro-tip:** Alternatively, you can tell PHP\_CodeSniffer the path to the WordPress standards by adding the following snippet to your custom ruleset:

    ```

    ```

To summarize:

```
cd ~/projects
git clone https://github.com/squizlabs/PHP_CodeSniffer.git phpcs
git clone -b master https://github.com/WordPress/WordPress-Coding-Standards.git wpcs
cd phpcs
./bin/phpcs --config-set installed_paths ../wpcs
```

And then add the `~/projects/phpcs/bin` directory to your `PATH` environment variable via your `.bashrc`.

You should then see `WordPress-Core` et al listed when you run `phpcs -i`.

Rulesets
--------

[](#rulesets)

### Standards subsets

[](#standards-subsets)

The project encompasses a super-set of the sniffs that the WordPress community may need. If you use the `WordPress` standard you will get all the checks.

You can use the following as standard names when invoking `phpcs` to select sniffs, fitting your needs:

- `WordPress` - complete set with all of the sniffs in the project
    - `WordPress-Core` - main ruleset for [WordPress core coding standards](https://developer.wordpress.org/coding-standards/wordpress-coding-standards/php/)
    - `WordPress-Docs` - additional ruleset for [WordPress inline documentation standards](https://developer.wordpress.org/coding-standards/inline-documentation-standards/php/)
    - `WordPress-Extra` - extended ruleset for recommended best practices, not sufficiently covered in the WordPress core coding standards
        - includes `WordPress-Core`

**Note:** The WPCS package used to include a `WordPress-VIP` ruleset and associated sniffs, prior to WPCS 2.0.0. The `WordPress-VIP` ruleset was originally intended to aid with the [WordPress.com VIP coding requirements](https://docs.wpvip.com/technical-references/code-review/), but has been superseded. It is recommended to use the [official VIP coding standards](https://github.com/Automattic/VIP-Coding-Standards) ruleset instead for checking code against the VIP platform requirements.

### Using a custom ruleset

[](#using-a-custom-ruleset)

If you need to further customize the selection of sniffs for your project - you can create a custom ruleset file. When you name this file either `.phpcs.xml`, `phpcs.xml`, `.phpcs.xml.dist` or `phpcs.xml.dist`, PHP\_CodeSniffer will automatically locate it as long as it is placed in the directory from which you run the CodeSniffer or in a directory above it. If you follow these naming conventions you don't have to supply a `--standard` arg. For more info, read about [using a default configuration file](https://github.com/squizlabs/PHP_CodeSniffer/wiki/Advanced-Usage#using-a-default-configuration-file). See also provided [`phpcs.xml.dist.sample`](phpcs.xml.dist.sample) file and [fully annotated example](https://github.com/squizlabs/PHP_CodeSniffer/wiki/Annotated-ruleset.xml) in the PHP\_CodeSniffer documentation.

### Customizing sniff behaviour

[](#customizing-sniff-behaviour)

The WordPress Coding Standard contains a number of sniffs which are configurable. This means that you can turn parts of the sniff on or off, or change the behaviour by setting a property for the sniff in your custom `.phpcs.xml.dist` file.

You can find a complete list of all the properties you can change in the [wiki](https://github.com/WordPress/WordPress-Coding-Standards/wiki/Customizable-sniff-properties).

### Recommended additional rulesets

[](#recommended-additional-rulesets)

The [PHPCompatibility](https://github.com/PHPCompatibility/PHPCompatibility) ruleset and its subset [PHPCompatibilityWP](https://github.com/PHPCompatibility/PHPCompatibilityWP) come highly recommended. The [PHPCompatibility](https://github.com/PHPCompatibility/PHPCompatibility) sniffs are designed to analyse your code for cross-PHP version compatibility.

The [PHPCompatibilityWP](https://github.com/PHPCompatibility/PHPCompatibilityWP) ruleset is based on PHPCompatibility, but specifically crafted to prevent false positives for projects which expect to run within the context of WordPress, i.e. core, plugins and themes.

Install either as a separate ruleset and run it separately against your code or add it to your custom ruleset, like so:

```

    *\.php$

```

Whichever way you run it, do make sure you set the `testVersion` to run the sniffs against. The `testVersion` determines for which PHP versions you will receive compatibility information. The recommended setting for this at this moment is `5.6-` to support the same PHP versions as WordPress Core supports.

For more information about setting the `testVersion`, see:

- [PHPCompatibility: Sniffing your code for compatibility with specific PHP version(s)](https://github.com/PHPCompatibility/PHPCompatibility#sniffing-your-code-for-compatibility-with-specific-php-versions)
- [PHPCompatibility: Using a custom ruleset](https://github.com/PHPCompatibility/PHPCompatibility#using-a-custom-ruleset)

How to use
----------

[](#how-to-use)

### Command line

[](#command-line)

Run the `phpcs` command line tool on a given file or directory, for example:

```
phpcs --standard=WordPress wp-load.php

```

Will result in following output:

```
------------------------------------------------------------------------------------------
FOUND 8 ERRORS AND 10 WARNINGS AFFECTING 11 LINES
------------------------------------------------------------------------------------------
 24 | WARNING | [ ] error_reporting() can lead to full path disclosure.
 24 | WARNING | [ ] error_reporting() found. Changing configuration at runtime is rarely
    |         |     necessary.
 37 | WARNING | [x] "require_once" is a statement not a function; no parentheses are
    |         |     required
 39 | WARNING | [ ] Silencing errors is discouraged
 39 | WARNING | [ ] Silencing errors is discouraged
 42 | WARNING | [x] "require_once" is a statement not a function; no parentheses are
    |         |     required
 46 | ERROR   | [ ] Inline comments must end in full-stops, exclamation marks, or
    |         |     question marks
 46 | ERROR   | [x] There must be no blank line following an inline comment
 49 | WARNING | [x] "require_once" is a statement not a function; no parentheses are
    |         |     required
 54 | WARNING | [x] "require_once" is a statement not a function; no parentheses are
    |         |     required
 63 | WARNING | [ ] Detected access of super global var $_SERVER, probably needs manual
    |         |     inspection.
 63 | ERROR   | [ ] Detected usage of a non-validated input variable: $_SERVER
 63 | ERROR   | [ ] Missing wp_unslash() before sanitization.
 63 | ERROR   | [ ] Detected usage of a non-sanitized input variable: $_SERVER
 69 | WARNING | [x] "require_once" is a statement not a function; no parentheses are
    |         |     required
 74 | ERROR   | [ ] Inline comments must end in full-stops, exclamation marks, or
    |         |     question marks
 92 | ERROR   | [ ] All output should be run through an escaping function (see the
    |         |     Security sections in the WordPress Developer Handbooks), found
    |         |     '$die'.
 92 | ERROR   | [ ] All output should be run through an escaping function (see the
    |         |     Security sections in the WordPress Developer Handbooks), found '__'.
------------------------------------------------------------------------------------------
PHPCBF CAN FIX THE 6 MARKED SNIFF VIOLATIONS AUTOMATICALLY
------------------------------------------------------------------------------------------

```

### Using PHPCS and WPCS from within your IDE

[](#using-phpcs-and-wpcs-from-within-your-ide)

- **PhpStorm** : Please see "[PHP Code Sniffer with WordPress Coding Standards Integration](https://confluence.jetbrains.com/display/PhpStorm/WordPress+Development+using+PhpStorm#WordPressDevelopmentusingPhpStorm-PHPCodeSnifferwithWordPressCodingStandardsIntegrationinPhpStorm)" in the PhpStorm documentation.
- **Sublime Text** : Please see "[Setting up WPCS to work in Sublime Text](https://github.com/WordPress/WordPress-Coding-Standards/wiki/Setting-up-WPCS-to-work-in-Sublime-Text)" in the wiki.
- **Atom**: Please see "[Setting up WPCS to work in Atom](https://github.com/WordPress/WordPress-Coding-Standards/wiki/Setting-up-WPCS-to-work-in-Atom)" in the wiki.
- **Visual Studio**: Please see "[Setting up PHP CodeSniffer in Visual Studio Code](https://tommcfarlin.com/php-codesniffer-in-visual-studio-code/)", a tutorial by Tom McFarlin.
- **Eclipse with XAMPP**: Please see "[Setting up WPCS when using Eclipse with XAMPP](https://github.com/WordPress/WordPress-Coding-Standards/wiki/How-to-use-WPCS-with-Eclipse-and-XAMPP)" in the wiki.

Running your code through WPCS automatically using CI tools
-----------------------------------------------------------

[](#running-your-code-through-wpcs-automatically-using-ci-tools)

- [Running in GitHub Actions](https://github.com/WordPress/WordPress-Coding-Standards/wiki/Running-in-GitHub-Actions)
- [Running in Travis](https://github.com/WordPress/WordPress-Coding-Standards/wiki/Running-in-Travis)

Fixing errors or ignoring them
------------------------------

[](#fixing-errors-or-ignoring-them)

You can find information on how to deal with some of the more frequent issues in the [wiki](https://github.com/WordPress/WordPress-Coding-Standards/wiki).

### Tools shipped with WPCS

[](#tools-shipped-with-wpcs)

Since version 1.2.0, WPCS has a special sniff category `Utils`.

This sniff category contains some tools which, generally speaking, will only be needed to be run once over a codebase and for which the fixers can be considered *risky*, i.e. very careful review by a developer is needed before accepting the fixes made by these sniffs.

The sniffs in this category are disabled by default and can only be activated by adding some properties for each sniff via a custom ruleset.

At this moment, WPCS offer the following tools:

- `WordPress.Utils.I18nTextDomainFixer` - This sniff can replace the text domain used in a code-base. The sniff will fix the text domains in both I18n function calls as well as in a plugin/theme header. Passing the following properties will activate the sniff:
    - `old_text_domain`: an array with one or more (old) text domain names which need to be replaced;
    - `new_text_domain`: the correct (new) text domain as a string.

Contributing
------------

[](#contributing)

See [CONTRIBUTING](.github/CONTRIBUTING.md), including information about [unit testing](.github/CONTRIBUTING.md#unit-testing) the standard.

License
-------

[](#license)

See [LICENSE](LICENSE) (MIT).

###  Health Score

32

—

LowBetter than 72% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community19

Small or concentrated contributor base

Maturity72

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~82 days

Recently: every ~13 days

Total

40

Last Release

974d ago

Major Versions

0.14.1 → 1.0.02018-07-25

1.2.1 → 2.0.0-RC12018-12-30

PHP version history (2 changes)0.13.0PHP &gt;=5.3

2.0.0-RC1PHP &gt;=5.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/0c25f6b70ef72327f04843a76176ee2f56d55de02dd21e927cb03e31aff44f05?d=identicon)[lewebsimple](/maintainers/lewebsimple)

---

Top Contributors

[![jrfnl](https://avatars.githubusercontent.com/u/663378?v=4)](https://github.com/jrfnl "jrfnl (1591 commits)")[![GaryJones](https://avatars.githubusercontent.com/u/88371?v=4)](https://github.com/GaryJones "GaryJones (491 commits)")[![JDGrimes](https://avatars.githubusercontent.com/u/4005415?v=4)](https://github.com/JDGrimes "JDGrimes (454 commits)")[![westonruter](https://avatars.githubusercontent.com/u/134745?v=4)](https://github.com/westonruter "westonruter (427 commits)")[![dingo-d](https://avatars.githubusercontent.com/u/8638515?v=4)](https://github.com/dingo-d "dingo-d (138 commits)")[![shadyvb](https://avatars.githubusercontent.com/u/451892?v=4)](https://github.com/shadyvb "shadyvb (98 commits)")[![NielsdeBlaauw](https://avatars.githubusercontent.com/u/661876?v=4)](https://github.com/NielsdeBlaauw "NielsdeBlaauw (27 commits)")[![Rarst](https://avatars.githubusercontent.com/u/737584?v=4)](https://github.com/Rarst "Rarst (25 commits)")[![tomjn](https://avatars.githubusercontent.com/u/58855?v=4)](https://github.com/tomjn "tomjn (19 commits)")[![mattyrob](https://avatars.githubusercontent.com/u/1280733?v=4)](https://github.com/mattyrob "mattyrob (18 commits)")[![mrchrisadams](https://avatars.githubusercontent.com/u/17906?v=4)](https://github.com/mrchrisadams "mrchrisadams (16 commits)")[![grappler](https://avatars.githubusercontent.com/u/1785641?v=4)](https://github.com/grappler "grappler (15 commits)")[![sandeshjangam](https://avatars.githubusercontent.com/u/15683894?v=4)](https://github.com/sandeshjangam "sandeshjangam (13 commits)")[![gedex](https://avatars.githubusercontent.com/u/78313?v=4)](https://github.com/gedex "gedex (13 commits)")[![ockham](https://avatars.githubusercontent.com/u/96308?v=4)](https://github.com/ockham "ockham (11 commits)")[![johnbillion](https://avatars.githubusercontent.com/u/208434?v=4)](https://github.com/johnbillion "johnbillion (10 commits)")[![ntwb](https://avatars.githubusercontent.com/u/1016458?v=4)](https://github.com/ntwb "ntwb (9 commits)")[![nyordanov](https://avatars.githubusercontent.com/u/192220?v=4)](https://github.com/nyordanov "nyordanov (6 commits)")[![tfrommen](https://avatars.githubusercontent.com/u/6049306?v=4)](https://github.com/tfrommen "tfrommen (5 commits)")[![fulldecent](https://avatars.githubusercontent.com/u/382183?v=4)](https://github.com/fulldecent "fulldecent (5 commits)")

---

Tags

standardsphpcswordpress

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/lewebsimple-wpcs/health.svg)

```
[![Health](https://phpackages.com/badges/lewebsimple-wpcs/health.svg)](https://phpackages.com/packages/lewebsimple-wpcs)
```

###  Alternatives

[wp-coding-standards/wpcs

PHP\_CodeSniffer rules (sniffs) to enforce WordPress coding conventions

2.7k42.5M1.6k](/packages/wp-coding-standards-wpcs)[phpcompatibility/phpcompatibility-wp

A ruleset for PHP\_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by WordPress.

21830.6M587](/packages/phpcompatibility-phpcompatibility-wp)[automattic/vipwpcs

PHP\_CodeSniffer rules (sniffs) to enforce WordPress VIP minimum coding conventions

25510.2M145](/packages/automattic-vipwpcs)[wptrt/wpthemereview

PHP\_CodeSniffer rules (sniffs) to verify theme compliance with the rules for theme hosting on wordpress.org

217736.5k29](/packages/wptrt-wpthemereview)[yoast/yoastcs

PHP\_CodeSniffer rules for Yoast projects

221.1M29](/packages/yoast-yoastcs)[axepress/wp-graphql-cs

PHP\_CodeSniffer rules (sniffs) for the WPGraphQL ecosystem.

1060.9k7](/packages/axepress-wp-graphql-cs)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
