我试图使用作曲家设置一种愉快的方式来处理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项目中使用供应商库的讨论。
希望您能与这些信息相处融洽。