wealcoder / wealcoder-coding-standard
A Wealcoder PHP_CodeSniffer standard that extends the official WordPress Coding Standards—customized for modern, secure, and consistent PHP development across all Wealcoder projects. Designed to enforce best practices and maintain high code quality in line with Wealcoder's engineering guidelines.
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Language:Shell
Type:phpcodesniffer-standard
pkg:composer/wealcoder/wealcoder-coding-standard
Requires
Requires (Dev)
- roave/security-advisories: dev-latest
This package is not auto-updated.
Last update: 2025-12-03 04:50:06 UTC
README
A Wealcoder PHP_CodeSniffer standard that extends the official WordPress Coding Standards—customized for modern, secure, and consistent PHP development across all Wealcoder projects. Designed to enforce best practices and maintain high code quality in line with Wealcoder's engineering guidelines.
Installation
Install via Composer:
composer require Wealcoder/wealcoder-coding-standard
For Global
composer global require Wealcoder/wealcoder-coding-standard
The package will automatically:
- Install PHP_CodeSniffer and required dependencies
- Register the
Wealcoder-Coding-Standardstandard - Set it as the default standard for your project
Usage
Command Line
Quick Check
vendor/bin/phpcs .
Using Composer Script
composer run phpcs
Custom Configuration
vendor/bin/phpcs --standard=Wealcoder-Coding-Standard path/to/files
IDE Integration
For better IDE integration, create a .phpcs.xml.dist file in your project root:
<?xml version="1.0"?> <ruleset name="Project Standards"> <description>A customized PHP_CodeSniffer ruleset that extends the official WordPress Coding Standards, tailored for modern, secure, and consistent PHP development practices.</description> <!-- Scan these directories --> <file>src/</file> <file>inc/</file> <!-- Exclude these paths --> <exclude-pattern>vendor/</exclude-pattern> <exclude-pattern>node_modules/</exclude-pattern> <exclude-pattern>*.min.js</exclude-pattern> <!-- Configuration --> <config name="minimum_supported_wp_version" value="6.2" /> <config name="testVersion" value="7.4-8.5" /> <!-- Use WordPress Code standards --> <rule ref="Wealcoder-Coding-Standard" /> <!-- Project-specific customizations --> <rule ref="WordPress.WP.I18n"> <properties> <property name="text_domain" type="array"> <element value="replace-with-your-current-text-domain"/> </property> </properties> </rule> </ruleset>
Continuous Integration
Add to your CI workflow:
# GitHub Actions example - name: PHP CodeSniffer run: composer run phpcs
Configuration Details
PHP Version Support
- Minimum: PHP 7.4
- Maximum: PHP 8.4
- Compatibility: Uses PHPCompatibilityWP for WordPress-specific compatibility checks
Key Rules Applied
- WordPress Coding Standards (with sensible exclusions)
- Tab indentation (1 tab per indent level)
- Space inside parentheses for readability
- Superfluous whitespace detection
- PHP compatibility checking for WordPress
Excluded Rules
The following rules are excluded for practical development:
- File naming conventions (WordPress.Files.FileName)
- Nonce verification requirements
- Direct database query restrictions
- Global variable override prohibitions
- Some documentation capitalization requirements
Customization
Project-Level Overrides
Create a phpcs.xml.dist file to override or add rules:
<rule ref="Wealcoder-Coding-Standard"> <!-- Enable a rule that's disabled by default --> <exclude name="WordPress.Files.FileName" /> </rule> <!-- Add custom exclusions --> <rule ref="WordPress.Security.NonceVerification.Missing"> <exclude-pattern>admin/ajax-handlers/*</exclude-pattern> </rule>
Inline Annotations
Disable rules for specific code blocks:
// phpcs:disable WordPress.Security.NonceVerification.Missing if ( isset( $_POST['data'] ) ) { // Process data without nonce check } // phpcs:enable WordPress.Security.NonceVerification.Missing
Requirements
- PHP 7.4 or higher ( Upto 8.4 )
- Composer
- PHP_CodeSniffer 3.9.0 or higher
Dependencies
dealerdirect/phpcodesniffer-composer-installer: ^1.0phpcompatibility/phpcompatibility-wp: ^2.1wp-coding-standards/wpcs: ^3.1.0
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Test with
composer run phpcs - Submit a pull request
License
GPL-3.0-or-later
Author
Wealcoder
Email: habib41juwel@gmail.com
Organization: Wealcoder