Important
I build and maintain reliable web applications, with a focus on PHP, WordPress, and software quality.
If this package helps your team, feel free to reach out for consulting, development work, or sponsorship.
It provides stub declarations for WordPress core functions, classes and interfaces, globals are not included. These stubs can help plugin and theme developers leverage static analysis tools like PHPStan.
The stubs are generated from @johnpbloch's package using php-stubs/generator.
- PHP 7.4 or 8.0
Require this package as a development dependency with Composer.
composer require --dev php-stubs/wordpress-stubsAlternatively you may download wordpress-stubs.php directly.
composer require --dev szepeviktor/phpstan-wordpressThe package szepeviktor/phpstan-wordpress
depends on phpstan/phpstan and this one.
Please do read
that package's README
and see the example directory over there.
Update your Psalm config to include this section.
<stubs>
<file name="vendor/php-stubs/wordpress-stubs/wordpress-stubs.php" />
</stubs>Furthermore ensure WordPress core is not included in <projectFiles>.
If your IDE has trouble parsing all of WordPress you may find the stubs useful for enabling code completion and related features. For example there are instructions for usage with VSCode's Intelephense extension.
This package is versioned to match the WordPress version from which the stubs are generated.
- Run modern PHP version
- Clone this repository and
cdinto it - Update
"johnpbloch/wordpress": "x.x.x"insource/composer.jsonwith the desired version - Run
composer update - And run
./generate.sh
The wordpress-stubs.php file should now be updated.