StellarWP coding standards uses a combination of:
- Generic (part of PHP_CodeSniffer)
- PEAR (part of PHP_CodeSniffer)
- PSR2 (part of PHP_CodeSniffer)
- Squiz (part of PHP_CodeSniffer)
- Zend (part of PHP_CodeSniffer)
- Custom sniffs (a few based on WordPress)
Important
Make sure that the command phpcs
is on version 3.4.2
+. In order to install it on that specifc version globally you can use:
composer global require "squizlabs/php_codesniffer=3.4.2"
You can follow this guide the only step you can replace is the one on Installing via Composer by the one above to install the 3.4.2 version instead.
<?xml version="1.0"?>
<ruleset name="StellarWP Coding Standards">
<rule ref="WordPress-VIP-Go"/>
<rule ref="WordPress-Docs">
<exclude-pattern>*/tests/*</exclude-pattern>
</rule>
<rule ref="WordPress">
<exclude name="WordPress.Files.FileName"/>
<exclude name="Generic.Arrays.DisallowShortArraySyntax"/>
</rule>
<rule ref="StellarWP"/>
<!--exclude the rule for violation of direct DB calls as some have no alternative-->
<rule ref="WordPress.DB.DirectDatabaseQuery">
<exclude-pattern>src/Test.php</exclude-pattern>
</rule>
<exclude-pattern>*/tests/_support/_generated/*</exclude-pattern>
<exclude-pattern>*/vendor/*</exclude-pattern>
</ruleset>