inc2734/wp-github-plugin-updater

一个用于WordPress的库,通过GitHub API自动更新插件。

3.1.8 2024-09-24 01:37 UTC

This package is auto-updated.

Last update: 2024-09-24 04:02:39 UTC


README

Build Status Latest Stable Version License

需要WordPress 5.9或更高版本。

安装

$ composer require inc2734/wp-github-plugin-updater

如何使用

基本

<?php
$updater = new Inc2734\WP_GitHub_Plugin_Updater\Bootstrap(
  plugin_basename( __FILE__ ),
  'user-name',
  'repository'
);

高级

<?php
$updater = new Inc2734\WP_GitHub_Plugin_Updater\Bootstrap(
  plugin_basename( __FILE__ ),
  'user-name',
  'repository',
  [
    'description_url'  => '', // URL for description tab content
    'installation_url' => '', // URL for installation tab content
    'faq_url'          => '', // URL for FAQ tab content
    'changelog_url'    => '', // URL for changelog tab content
    'screenshots_url'  => '', // URL for screenshots tab content
    'icons' => [
      'svg' => '', // svg URL. Square recommended
      '1x'  => '', // Image URL 64×64
      '2x'  => '', // Image URL 128×128
    ],
    'banners' => [
      'low'  => '', // Image URL 772×250
      'high' => '', // Image URL 1554×500
    ],
    'tested'       => '5.2.2', // Tested up WordPress version
    'requires_php' => '5.6.0', // Requires PHP version
    'requires'     => '5.0.0', // Requires WordPress version
  ]
);

过滤器钩子

inc2734_github_plugin_updater_zip_url_<$user_name>/<$repository>

自定义下载包的URL。

add_filter(
  'inc2734_github_plugin_updater_zip_url_inc2734/snow-monkey-blocks',
  function( $url, $user_name, $repository, $tag_name ) {
    return $url;
  },
  10,
  4
);

inc2734_github_plugin_updater_request_url_<$user_name>/<$repository>

自定义请求的API URL。

add_filter(
  'inc2734_github_plugin_updater_request_url_inc2734/snow-monkey-blocks',
  function( $url, $user_name, $repository ) {
    return $url;
  },
  10,
  3
);

inc2734_github_plugin_updater_plugins_api_<$user_name>/<$repository>

自定义plugins_api的字段。

add_filter(
  'inc2734_github_plugin_updater_plugins_api_inc2734/snow-monkey-blocks',
  function( $obj, $response ) {
    return $obj;
  }
);

inc2734_github_plugin_updater_repository_content_url_<$user_name>/<$repository>

自定义内容API URL。

add_filter(
  'inc2734_github_plugin_updater_repository_content_url_inc2734/snow-monkey-blocks',
  function( $url, $user_name, $repository, $plugin_name ) {
    return $url;
  },
  10,
  4
);

inc2734_github_plugin_updater_repository_content_headers_<$user_name>/<$repository>

自定义内容API的字段。

add_filter(
  'inc2734_github_plugin_updater_repository_content_headers_inc2734/snow-monkey-blocks',
  function( $headers ) {
    return $headers;
  }
);

inc2734_github_plugin_updater_contributors_url_<$user_name>/<$repository>

自定义贡献者API URL。

add_filter(
  'inc2734_github_plugin_updater_contributors_url_inc2734/snow-monkey-blocks',
  function( $url, $user_name, $repository ) {
    return $url;
  },
  10,
  4
);

inc2734_github_plugin_updater_zip_url

从v2.0.0版本开始已弃用

自定义下载包的URL。

add_filter(
  'inc2734_github_plugin_updater_zip_url',
  function( $url, $user_name, $repository, $tag_name ) {
    if ( 'inc2734' === $user_name && 'snow-monkey-blocks' === $repository ) {
      return 'https://example.com/my-custom-updater-zip-url';
    }
    return $url;
  },
  10,
  4
);

inc2734_github_plugin_updater_request_url

从v2.0.0版本开始已弃用

自定义请求的API URL。

add_filter(
  'inc2734_github_plugin_updater_request_url',
  function( $url, $user_name, $repository ) {
    if ( 'inc2734' === $user_name && 'snow-monkey-blocks' === $repository ) {
      return 'https://example.com/my-custom-updater-request-url';
    }
    return $url;
  },
  10,
  3
);