首页
/ 在Plugin Update Checker中忽略GitHub Releases仅检测Tags的方法

在Plugin Update Checker中忽略GitHub Releases仅检测Tags的方法

2025-07-02 11:06:08作者:齐冠琰

Plugin Update Checker是一个广泛使用的WordPress插件更新检查库,它提供了从版本控制系统(如GitHub)自动检测更新的功能。在实际开发中,开发者有时需要更精细地控制版本检测策略。

默认检测策略

默认情况下,Plugin Update Checker会同时检查GitHub的Releases和Tags来寻找最新版本。这包含两种检测策略:

  1. 检查最新的Release(稳定版本)
  2. 检查最新的Tag(代码标记)

自定义检测策略

在某些开发场景下,开发者可能希望:

  • 仅依赖Tags进行版本控制
  • 避免Releases带来的干扰
  • 实现更灵活的版本管理方式

可以通过以下PHP代码片段实现仅检测Tags的功能:

use YahnisElsts\PluginUpdateChecker\v5p3\Vcs\GitHubApi;
$updateChecker->addFilter('vcs_update_detection_strategies', function($strategies) {
    unset($strategies[GitHubApi::STRATEGY_LATEST_RELEASE]);
    return $strategies;
});

实现原理

这段代码的工作原理是:

  1. 通过addFilter方法注册一个过滤器回调
  2. 在回调中移除Releases检测策略
  3. 保留Tags检测策略

适用场景

这种配置特别适合以下情况:

  • 项目使用Tags作为主要版本控制方式
  • Releases流程与开发流程分离
  • 需要更频繁的版本迭代
  • 自动化部署流程基于Tags触发

注意事项

修改检测策略后需要确保:

  1. 所有版本更新都正确打上了Tag
  2. Tag命名遵循语义化版本规范
  3. 团队其他成员了解这一变更

通过这种定制化配置,开发者可以更精确地控制Plugin Update Checker的版本检测行为,适应不同的开发流程和版本管理需求。

登录后查看全文
热门项目推荐
相关项目推荐