将 Composer 与 Wordpress 配合使用



我试图使用作曲家设置一种愉快的方式来处理wordpress及其插件。我的问题将相当广泛。你会怎么做?

我想要的基本上是这样,它安装了wordpress(现在正在这样做(,但是我指定的插件安装在名为"vendor"的文件夹中,而不是"插件"文件夹中。为什么?

这是我的作曲家.json。

{
"name": "name",
"description": "name Wordpress",
"repositories":[
{
"type":"composer",
"url":"https://wpackagist.org"
}
],
"require": {
"timber/timber": "^1.3",
"johnpbloch/wordpress-core-installer": "^0.2.1",
"johnpbloch/wordpress": "^4.4"
},
"extra": {
"installer-paths": {
"wp-content/plugins/{$name}/": ["type:wordpress-plugin"],
"wp-content/themes/{$name}/" : ["type:wordpress-theme"]
},
"wordpress-install-dir": "wp"
}
}

我对在WP中使用作曲家进行包管理的想法很陌生。但我觉得这很有趣,所以我研究了一下。

安装路径特定于插件。还要查找wpackagist-plugin供应商名称。其他人可能不会将代码放在wp文件夹中。

例如,如果您需要"wpackagist-plugin/advanced-custom-fields": "^4.4",它会根据需要安装在插件文件夹中。我相信供应商前缀('wpackagist-plugin'(很重要,因为它们搜索中的包没有前缀。

快速解决方案

尝试使用"wpackagist-plugin/timber-library": "^1.3"

它很好地放置在插件文件夹中,并在插件文件夹中附带了它的所有依赖项。

更多解释

timber/timber实际上是从 packagist.org(https://packagist.org/packages/timber/timber(而不是 wpackagist.org 中提取的。 在 wpackagist.org 上,您可以找到木材库,这是打包的等价物(包括作曲家自动加载器和其他部门(。

这个路径控制配方(针对插件开发人员(说:

要使用它,扩展的 composer.json 应包含:

"type"    : "wordpress-plugin",

使用composer install安装包后,您将看到vendor/timber/timber中的包没有该类型。

事实上,有一个名为timber的较旧的WordPress插件,它停留在0.8版本。它被木材图书馆所取代。

从 packagist.org 开始使用"timber/timber": "^1.3"

如果要使用从 packagist.org 中提取的木材,则可以这样做,前提是将以下行放在wp-config.php的顶部:

require __DIR__ . '/wp-content/vendor/autoload.php';

然后,您必须同时部署供应商和wp文件夹。

GitHub上还有一个关于如何在WP项目中使用供应商库的讨论。

希望您能与这些信息相处融洽。

最新更新