我正在开发一个wordpress插件,该插件使用了一个composer包。作为参考,我正在开发的插件在这里:
https://github.com/tunapanda/wp-h5p-xapi
我正处于本地工作的阶段,我想将其发布到wordpress插件库。
为了使用该插件,我需要在插件目录中运行composer install
以安装composer包。我的问题是,它如何与插件存储库一起使用以及使其工作的最佳实践是什么?因为很明显,如果我只是将插件发布到存储库,如果有人从那里安装它就无法工作,因为那时将不会安装作为依赖项的composer包。
我认为有两种不同的方法可以解决这个问题:
将我的vendor
目录放在源代码管理下,并将其签入存储库。这并不是一个理想的解决方案,因为我首先会失去使用诸如composer之类的包管理器的重点。
避免一起使用composer,而只是将我需要的包的代码放在源代码管理下。
所以我的问题是,最佳做法是什么?有谁能指出我使用外部依赖的参考wordpress插件?
答案 0 :(得分:3)
你的插件看起来非常有趣,看到H5P项目的补充已经很酷了,真的很酷。
关于你的问题,我不确定是否有最佳做法或最佳方法。从我所看到的,最常见的事情是在插件中包含第三方库,或者需要一个已经拥有它的插件。当然,如果它是您需要的版本,则会遇到一个问题。
如果您决定这样做,我建议您在加载插件后加入它,并在包含插件之前进行一些检查,例如:
function load_my_library() {
if ( !class_exists( 'MyLibraryClass' ) ) {
require_once( plugin_dir_path(__FILE__) . 'my-library/class.php' );
}
}
add_action( 'plugins_loaded', 'load_my_library', 0 );
我希望这个答案对你有用。祝你插件好运!