PHPackages                             rarst/update-blocker - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. rarst/update-blocker

ActiveWordpress-plugin[Utility &amp; Helpers](/categories/utility)

rarst/update-blocker
====================

Lightweight generic blocker of updates from official WordPress repositories

1.1(9y ago)5624.5k↓75.1%23MITPHP

Since Jun 25Pushed 9y ago8 watchersCompare

[ Source](https://github.com/Rarst/update-blocker)[ Packagist](https://packagist.org/packages/rarst/update-blocker)[ Docs](https://github.com/Rarst/update-blocker)[ RSS](/packages/rarst-update-blocker/feed)WikiDiscussions master Synced yesterday

READMEChangelog (1)Dependencies (1)Versions (3)Used By (3)

Update Blocker — for WP repositories
====================================

[](#update-blocker--for-wp-repositories)

Update Blocker is a lightweight generic blocker of plugin, theme, and core updates from official WordPress repositories.

It was created as shared reusable plugin for the sake of no longer reinventing that particular wheel.

### Goals

[](#goals)

- single main file
- `mu-plugins`–friendly
- no hard dependencies

### Not goals

[](#not-goals)

- interface
- elaborate API
- as–library use
- unreasonable compat

Installation
------------

[](#installation)

### Plugin

[](#plugin)

1. [Download ZIP](https://github.com/Rarst/update-blocker/archive/master.zip).
2. Unpack files from inside into `wp-content/plugins/update-blocker`.

### MU-plugin

[](#mu-plugin)

1. [Download `update-blocker.php`](https://raw.githubusercontent.com/Rarst/update-blocker/master/update-blocker.php).
2. Place into `wp-content/mu-plugins`.
3. Edit settings for blocks in the file.

### Composer

[](#composer)

Create project in the `wp-content/plugins`:

```
composer create-project rarst/update-blocker:~1.0

```

Or require in `composer.json` of site project:

```
{
	"require": {
		"rarst/update-blocker": "~1.0"
	}
}
```

Requiring on plugin/theme level is not implemented, use `suggest`:

```
{
	"suggest": {
		"rarst/update-blocker": "Prevents invalid updates from official repositories"
	}
}
```

Configuration
-------------

[](#configuration)

Plugin's settings have following structure:

```
array(
	'all'     => false,
	'files'   => array( '.git', '.svn', '.hg' ),
	'plugins' => array( 'update-blocker/update-blocker.php' ),
	'themes'  => array(),
	'core'    => false,
)
```

- `all` — boolean, disables updates completely
- `files` — array of plugin/theme root–relative files to detect for block
- `plugins` — array of plugin base names (`folder-name/plugin-name.php`) to block
- `themes` — array of theme slugs (`theme-name`) to block
- `core` — boolean, disables core updates

Settings pass through `update_blocker_blocked` filter.

Processed data passes through `update_blocker_plugins` and `update_blocker_themes` filters during update checks.

### Plugin opt–in

[](#plugin-optin)

```
add_filter( 'update_blocker_blocked', function( $blocked ) {
	$blocked['plugins'][] = plugin_basename( __FILE__ ); // or just folder-name/plugin-name.php string
	return $blocked;
} );
```

### Theme opt–in

[](#theme-optin)

```
add_filter( 'update_blocker_blocked', function( $blocked ) {
	$blocked['themes'][] = 'theme-name';
	return $blocked;
} );
```

### Core opt–in

[](#core-optin)

```
add_filter( 'update_blocker_blocked', function ( $blocked ) {
	$blocked['core'] = true;
	return $blocked;
} );
```

License
-------

[](#license)

- MIT

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity38

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~800 days

Total

2

Last Release

3590d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/689ddc4f33541ac4a001d247e560f8805d219a95e7e42a16e0d22b9409f385cb?d=identicon)[Rarst](/maintainers/Rarst)

---

Top Contributors

[![Rarst](https://avatars.githubusercontent.com/u/737584?v=4)](https://github.com/Rarst "Rarst (21 commits)")

---

Tags

wordpresswordpress-pluginwordpress

### Embed Badge

![Health badge](/badges/rarst-update-blocker/health.svg)

```
[![Health](https://phpackages.com/badges/rarst-update-blocker/health.svg)](https://phpackages.com/packages/rarst-update-blocker)
```

###  Alternatives

[roots/bedrock

WordPress boilerplate with Composer, easier configuration, and an improved folder structure

6.5k463.8k2](/packages/roots-bedrock)[helsingborg-stad/municipio

A bootstrap theme for creating municipality sites.

4028.5k10](/packages/helsingborg-stad-municipio)[roots/wp-stage-switcher

WordPress plugin that allows you to switch between different environments from the admin bar

383469.2k3](/packages/roots-wp-stage-switcher)[vinkla/wordplate

The WordPlate boilerplate

2.2k5.3k](/packages/vinkla-wordplate)[mediawiki/maps

Adds various mapping features to MediaWiki

84152.3k3](/packages/mediawiki-maps)[civicrm/civicrm-drupal-8

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

19251.4k3](/packages/civicrm-civicrm-drupal-8)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
