告别静态分析的噩梦:WordPress Stubs 助力代码质量提升

我最近在开发一个wordpress插件,使用了psalm进行静态分析。由于插件依赖于WordPress核心代码,psalm在分析过程中总是报错,提示找不到各种wordpress函数和类。这导致我的代码审查过程非常低效,许多潜在的错误都无法被及时发现。我尝试了各种方法,例如调整psalm的配置,甚至尝试直接忽略部分错误,但这些方法都治标不治本,问题依然存在。

在一番搜索之后,我发现了giacocorsiglia/wordpress-stubs这个宝藏库。它提供了WordPress核心代码的声明存根,让静态分析工具能够“理解”WordPress的API,从而避免因为找不到函数或类而报错。

安装这个库非常简单,只需要使用composer

composer require --dev giacocorsiglia/wordpress-stubs

安装完成后,你需要更新Psalm的配置文件,添加如下内容:

<stubs></p><pre class="brush:php;toolbar:false"><file name="vendor/giacocorsiglia/wordpress-stubs/wordpress-stubs.php" />

同时,确保你的Psalm配置文件中部分不包含WordPress核心代码的路径。这能避免Psalm同时分析WordPress核心代码和存根文件,从而产生冲突。

配置完成后,再次运行Psalm,你会发现之前的错误消失了!Psalm能够正确地识别WordPress函数和类,并对我的插件代码进行更准确的分析,找出更多潜在的bug。这极大地提高了我的开发效率和代码质量。

此外,giacocorsiglia/wordpress-stubs 不仅仅适用于Psalm,它也能够提升其他ide的代码补全功能。例如,在使用vscode和Intelephense扩展时,这个库能够提供更准确的代码提示,减少代码编写错误。 虽然我的Intelephense已经能很好地解析WordPress核心代码,但使用这个库仍然能提升代码提示的准确性和速度。

总而言之,giacocorsiglia/wordpress-stubs是一个非常实用的工具,它解决了wordpress插件和主题开发中一个常见的痛点:静态分析的困难。通过使用这个库,我们可以显著提升代码质量,减少bug,并提高开发效率。 强烈推荐给所有WordPress开发者! 记住,虽然这个库非常有用,但它只是辅助工具,并不能替代对WordPress核心代码的理解和规范的编码实践。

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享