giacocorsiglia/wordpress-stubs

WordPress函数、类和全局变量声明占位符,以便更容易进行静态分析。

v5.1.1 2019-03-13 21:16 UTC

This package is auto-updated.

Last update: 2024-08-29 04:20:07 UTC


README

你应该使用php-stubs/wordpress-stubs的分支,感谢@szepeviktor

WordPress占位符

Build Status

此软件包提供WordPress核心函数、类、接口和全局变量的声明。这些占位符可以帮助插件和主题开发者利用像Psalm这样的静态分析工具,这些工具通常不喜欢解析所有WordPress代码。

这些占位符直接使用giacocorsiglia/stubs-generator源代码生成。不用说,这个库重新包装了WordPress代码的一个子集,这是WordPress核心开发者的工作。当然,没有实际的东西,这个子集是无用的!

安装

使用Composer将此软件包作为开发依赖项

composer require --dev giacocorsiglia/wordpress-stubs

或者,您可以直接下载wordpress-stubs.php

与Psalm一起使用

更新您的Psalm配置以包括该部分

<stubs>
    <file name="vendor/giacocorsiglia/wordpress-stubs/wordpress-stubs.php" />
</stubs>

此外,请确保WordPress核心代码不包含在<projectFiles>下。

用于Intellisense

如果您的编辑器难以解析所有WordPress代码,您可能会发现这些占位符对于启用代码补全和相关功能很有用。例如,这里提供了与VSCode的Intelephense扩展一起使用的说明。(然而,在我的经验中,Intelephense解析WordPress核心非常顺利。)

版本控制

此软件包的版本与生成占位符的WordPress版本相匹配。如果需要任何占位符的修复,后续版本将版本化为WP_VERSION.X

为不同版本的WordPress生成占位符

您应该运行PHP 7.1或更高版本以执行以下步骤,因此将排除所有针对旧版本PHP的函数定义,这些函数定义是作为polyfill的。此外,占位符生成器软件包至少需要PHP 7.1。

  1. 克隆此存储库并cd进入它。
  2. composer.json中将"johnpbloch/wordpress": "X.X.X"更新为您的所需版本。
  3. 运行composer update
  4. 运行./generate.sh

现在应该更新了wordpress-stubs.php文件。如果您希望看到针对新版本的发布,请随时提交一个Pull Request。如果事情落后了,请为每个缺少的版本在单独的提交中生成占位符,以便我们有一个连续的发布历史。

贡献

请查看CONTRIBUTING.md