afragen/wp-dependency-installer

帮助WordPress插件依赖管理的库。

4.3.13 2023-05-18 18:49 UTC

README

这是一个开发者可选或自动安装他们插件或主题的插件依赖的类。它可以安装来自wp.org、GitHub、Bitbucket、GitLab、Gitea或直接URL的插件。

有关WP Dependency Installer的详细信息可在wiki上找到。

另请参阅: 示例插件

描述

您可以使用 composer 在WordPress插件/主题中安装此包。

请确保您在 composer.json 中使用此框架的最新版本

  1. 在您的插件或主题根目录下,运行以下命令
composer require afragen/wp-dependency-installer
  1. 然后创建一个示例 wp-dependencies.json 文件
[
  {
    "name": "Git Updater",
    "host": "github",
    "slug": "git-updater/git-updater.php",
    "uri": "afragen/git-updater",
    "branch": "develop",
    "required": true,
    "token": null
  },
  {
    "name": "Query Monitor",
    "host": "wordpress",
    "slug": "query-monitor/query-monitor.php",
    "uri": "https://wordpresstheme.cn/plugins/query-monitor/",
    "optional": true
  },
  {
    "name": "Local Development",
    "host": "wordpress",
    "slug": "local-development/local-development.php",
    "uri": "https://wordpresstheme.cn/plugins/local-development/",
    "required": true
  }
]

然后您需要更新 wp-dependencies.json 以满足您的需求。

  1. 最后将以下行添加到您的插件或主题的 functions.php 文件中
require_once __DIR__ . '/vendor/autoload.php';
add_action( 'plugins_loaded', static function() {
  WP_Dependency_Installer::instance( __DIR__ )->run();
});

WP_Dependency_Installer 应通过动作钩子如 plugins_loadedinit 来加载以正确运行,因为它需要加载 wp-includes/pluggable.php 以执行 wp_create_nonce()

  1. (可选) 查看一些内置的 钩子函数 以进一步自定义插件的外观和行为

这就完成了,祝您博客愉快!

开发

欢迎在 develop 分支上提交PR。