PHPackages                             pantheon-systems/pantheon-wp-main - 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. pantheon-systems/pantheon-wp-main

Abandoned → [pantheon-systems/pantheon-mu-plugin](/?search=pantheon-systems%2Fpantheon-mu-plugin)Wordpress-muplugin[Utility &amp; Helpers](/categories/utility)

pantheon-systems/pantheon-wp-main
=================================

Pantheon mu-plugin for WordPress sites.

1.5.4(5mo ago)121247[14 issues](https://github.com/pantheon-systems/pantheon-mu-plugin/issues)[7 PRs](https://github.com/pantheon-systems/pantheon-mu-plugin/pulls)MITPHPCI passing

Since Jun 17Pushed 1mo ago10 watchersCompare

[ Source](https://github.com/pantheon-systems/pantheon-mu-plugin)[ Packagist](https://packagist.org/packages/pantheon-systems/pantheon-wp-main)[ RSS](/packages/pantheon-systems-pantheon-wp-main/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (5)Versions (47)Used By (0)

Pantheon Must-Use Plugin
========================

[](#pantheon-must-use-plugin)

[![Actively Maintained](https://camo.githubusercontent.com/2ae5ff81f271fb028d720adee6b3595770166f3707a4705a4a2a3b71c332b249/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f50616e7468656f6e2d4163746976656c795f4d61696e7461696e65642d79656c6c6f773f6c6f676f3d70616e7468656f6e26636f6c6f723d464644433238)](https://docs.pantheon.io/oss-support-levels#actively-maintained-support)[![Test](https://github.com/pantheon-systems/pantheon-mu-plugin/actions/workflows/test.yml/badge.svg)](https://github.com/pantheon-systems/pantheon-mu-plugin/actions/workflows/test.yml)[![GitHub Release](https://camo.githubusercontent.com/5cbabbdb069a6688ddcdeaea5b3e1c51c843cbe02c8ba61bafa8b141376b319a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f70616e7468656f6e2d73797374656d732f70616e7468656f6e2d6d752d706c7567696e)](https://camo.githubusercontent.com/5cbabbdb069a6688ddcdeaea5b3e1c51c843cbe02c8ba61bafa8b141376b319a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f70616e7468656f6e2d73797374656d732f70616e7468656f6e2d6d752d706c7567696e)[![GitHub License](https://camo.githubusercontent.com/d34331ebf1d49534d83c57a9075a1b01f47c52f62ea548ce3ef495600a9a705f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f70616e7468656f6e2d73797374656d732f70616e7468656f6e2d6d752d706c7567696e)](https://camo.githubusercontent.com/d34331ebf1d49534d83c57a9075a1b01f47c52f62ea548ce3ef495600a9a705f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f70616e7468656f6e2d73797374656d732f70616e7468656f6e2d6d752d706c7567696e)

The Pantheon Must-Use Plugin has been designed to tailor the WordPress CMS experience for Pantheon's platform.

What does that mean? We're glad you asked!

Features
--------

[](#features)

### WebOps Workflow

[](#webops-workflow)

**Integrates WordPress with Pantheon Worklow.** Encourages updating plugins and themes in the Development environment and using Pantheon's git-based upstream core updates. Alerts admins if an update is available but disables automatic updates (so those updates can be applied via the upstream).

### Login

[](#login)

**Customized login form.** The login page links back to the Pantheon dashboard on dev, test and live environments that do not have a domain attached.

### Edge Cache (Global CDN)

[](#edge-cache-global-cdn)

**Facilitates communication between Pantheon's Edge Cache layer and WordPress.** It allows you to set the default cache age, clear individual pages on demand, and it will automatically clear relevant urls when the site is updated. Authored by [Matthew Boynes](http://www.alleyinteractive.com/).

### WordPress Multisite Support

[](#wordpress-multisite-support)

**Simplified multisite configuration.** The `WP_ALLOW_MULTISITE` is automatically defined on WordPress Multisite-based upstreams. The Network Setup pages and notices have been customized for a Pantheon-specific WordPress multisite experience.

### Maintenance Mode

[](#maintenance-mode)

**Put your site into a maintenance mode.** Prevent users from accessing your sites during major updates by enabling Maintenance Mode either in the WordPress admin or via WP-CLI.

### Compatibility Layer

[](#compatibility-layer)

**Ensure your WordPress website is compatible with Pantheon.** Automatically apply &amp; report status of compatibility fixes for common issues that arise when running WordPress on Pantheon.

Hooks
-----

[](#hooks)

The Pantheon Must-Use Plugin provides the following hooks that can be used in your code:

### Filters

[](#filters)

#### `pantheon_wp_login_text`

[](#pantheon_wp_login_text)

Filter the text displayed on the login page next to the Return to Pantheon button.

**Default Value:** `Log into your WordPress Site`

**Example:**

```
add_filter( 'pantheon_wp_login_text', function() {
	return 'Log into MySite.';
} );
```

#### `pantheon_cache_default_max_age`

[](#pantheon_cache_default_max_age)

Filter the default cache max-age for the Pantheon Edge Cache.

**Default Value:** `WEEK_IN_SECONDS` (604800)

**Example:**

```
add_filter( 'pantheon_cache_default_max_age', function() {
    return 2 * WEEK_IN_SECONDS;
} );
```

#### `pantheon_cache_do_maintenance_mode`

[](#pantheon_cache_do_maintenance_mode)

Allows you to modify the maintenance mode behavior with more advanced conditionals.

**Default Value:** Boolean, depending on whether maintenance mode is enabled, user is not on the login page and the action is not happening in WP-CLI.

```
add_filter( 'pantheon_cache_do_maintenance_mode', function( $do_maintenance_mode ) {
	if ( $some_conditional_logic ) {
		return false;
	}
	return $do_maintenance_mode;
} );
```

#### `pantheon_cache_allow_clear_all`

[](#pantheon_cache_allow_clear_all)

Allows you to disable the ability to clear the entire cache from the WordPress admin. If set to `false`, this removes the "Clear Site Cache" section of the Pantheon Page Cache admin page.

**Default Value:** `true`

**Example:**

```
add_filter( 'pantheon_cache_allow_clear_all', '__return_false' );
```

#### `pantheon_skip_cache_control`

[](#pantheon_skip_cache_control)

Allows you to disable the cache control headers that are sent by the Pantheon Page Cache plugin.

**Default Value:** `false`

**Example:**

```
add_filter( 'pantheon_skip_cache_control', '__return_true' );
```

#### `pantheon_compatibility_known_issues_plugins`

[](#pantheon_compatibility_known_issues_plugins)

Allows you to filter plugins with known compatibility issues on Pantheon so they are excluded from the Site Health check.

**Default Value:** An array of plugins with known issues, e.g.:

```
[
	'big-file-uploads' => [
		'plugin_status' => esc_html__( 'Manual Fix Required', 'pantheon' ),
		'plugin_slug' => 'tuxedo-big-file-uploads/tuxedo_big_file_uploads.php',
		'plugin_message' => wp_kses_post(
			sprintf(
				/* translators: %s: the link to relevant documentation. */
				__( 'Read more about the issue here.', 'pantheon' ),
				'https://docs.pantheon.io/wordpress-known-issues#big-file-uploads'
			)
		),
	],
	'jetpack' => [
		'plugin_status' => esc_html__( 'Manual Fix Required', 'pantheon' ),
		'plugin_slug' => 'jetpack/jetpack.php',
		'plugin_message' => wp_kses_post(
			sprintf(
				/* translators: %s: the link to relevant documentation. */
				__( 'Read more about the issue here.', 'pantheon' ),
				'https://docs.pantheon.io/wordpress-known-issues#jetpack'
			)
		),
	],
	'wordfence' => [
		'plugin_status' => esc_html__( 'Manual Fix Required', 'pantheon' ),
		'plugin_slug' => 'wordfence/wordfence.php',
		'plugin_message' => wp_kses_post(
			sprintf(
				/* translators: %s: the link to relevant documentation. */
				__( 'Read more about the issue here.', 'pantheon' ),
				'https://docs.pantheon.io/wordpress-known-issues#wordfence'
			)
		),
	],
]
```

**Example:**

```
// Filter a specific plugin out of the known issues list.
add_filter( 'pantheon_compatibility_known_issues_plugins', function( $plugins ) {
	if ( isset( $plugins['plugin-slug'] ) ) {
		unset( $plugins['plugin-slug'] );
	}
	return $plugins;
} );
```

### Actions

[](#actions)

#### `pantheon_cache_settings_page_top`

[](#pantheon_cache_settings_page_top)

Runs at the top of the Pantheon Page Cache settings page.

**Example:**

```
add_action( 'pantheon_cache_settings_page_top', function() {
	echo 'My Custom Heading';
} );
```

#### `pantheon_cache_settings_page_bottom`

[](#pantheon_cache_settings_page_bottom)

Runs at the bottom of the Pantheon Page Cache settings page.

**Example:**

```
add_action( 'pantheon_cache_settings_page_bottom', function() {
	echo 'My Custom Footer';
} );
```

Install With Composer
---------------------

[](#install-with-composer)

**Built for Composer.** While Pantheon automation ensures that the latest version of the MU plugin are pushed with every update to WordPress, the Composer-based project ensures that you can manage it alongside your other WordPress mu-plugins, plugins and themes in your `composer.json`.

```
composer require pantheon-systems/pantheon-mu-plugin
```

\-- Maintained by [Pantheon](https://pantheon.io) and built by the [community](https://github.com/pantheon-systems/pantheon-mu-plugin/graphs/contributors).

[Releases and Changelogs](https://github.com/pantheon-systems/pantheon-mu-plugin/releases)

###  Health Score

44

—

FairBetter than 92% of packages

Maintenance63

Regular maintenance activity

Popularity20

Limited adoption so far

Community28

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

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 ~55 days

Recently: every ~124 days

Total

24

Last Release

153d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/5a89f5f15357797cbd6ec7833a28626478ae3c0ceb5fa1faa8a26d0960584c65?d=identicon)[pantheon-systems](/maintainers/pantheon-systems)

![](https://www.gravatar.com/avatar/b9cb2666172b307363105b32397d5bb0df0c7df7209dc5968d0c45d148184855?d=identicon)[rwagner00](/maintainers/rwagner00)

![](https://www.gravatar.com/avatar/d9ca460cecd2c1438b31b66b2f810dc0ff05746b53ba006edb915e1ff8354b99?d=identicon)[jspellman814](/maintainers/jspellman814)

---

Top Contributors

[![jazzsequence](https://avatars.githubusercontent.com/u/991511?v=4)](https://github.com/jazzsequence "jazzsequence (41 commits)")[![danielbachhuber](https://avatars.githubusercontent.com/u/36432?v=4)](https://github.com/danielbachhuber "danielbachhuber (16 commits)")[![pwtyler](https://avatars.githubusercontent.com/u/8714062?v=4)](https://github.com/pwtyler "pwtyler (7 commits)")[![rwagner00](https://avatars.githubusercontent.com/u/1789035?v=4)](https://github.com/rwagner00 "rwagner00 (5 commits)")[![namespacebrian](https://avatars.githubusercontent.com/u/87093053?v=4)](https://github.com/namespacebrian "namespacebrian (3 commits)")[![nullvariable](https://avatars.githubusercontent.com/u/171515?v=4)](https://github.com/nullvariable "nullvariable (2 commits)")[![greg-1-anderson](https://avatars.githubusercontent.com/u/612191?v=4)](https://github.com/greg-1-anderson "greg-1-anderson (1 commits)")[![joe-westcott](https://avatars.githubusercontent.com/u/13838392?v=4)](https://github.com/joe-westcott "joe-westcott (1 commits)")[![kporras07](https://avatars.githubusercontent.com/u/2217820?v=4)](https://github.com/kporras07 "kporras07 (1 commits)")[![mboynes](https://avatars.githubusercontent.com/u/465154?v=4)](https://github.com/mboynes "mboynes (1 commits)")[![mikevanwinkle](https://avatars.githubusercontent.com/u/429554?v=4)](https://github.com/mikevanwinkle "mikevanwinkle (1 commits)")[![rkunjappan](https://avatars.githubusercontent.com/u/210441229?v=4)](https://github.com/rkunjappan "rkunjappan (1 commits)")[![scottbasgaard](https://avatars.githubusercontent.com/u/91581?v=4)](https://github.com/scottbasgaard "scottbasgaard (1 commits)")[![TimothyBJacobs](https://avatars.githubusercontent.com/u/3460448?v=4)](https://github.com/TimothyBJacobs "TimothyBJacobs (1 commits)")[![tripflex](https://avatars.githubusercontent.com/u/553732?v=4)](https://github.com/tripflex "tripflex (1 commits)")[![tundeafolabi](https://avatars.githubusercontent.com/u/218675977?v=4)](https://github.com/tundeafolabi "tundeafolabi (1 commits)")[![al-esc](https://avatars.githubusercontent.com/u/7956092?v=4)](https://github.com/al-esc "al-esc (1 commits)")[![westonruter](https://avatars.githubusercontent.com/u/134745?v=4)](https://github.com/westonruter "westonruter (1 commits)")[![AnaisPantheor](https://avatars.githubusercontent.com/u/208500581?v=4)](https://github.com/AnaisPantheor "AnaisPantheor (1 commits)")[![ataylorme](https://avatars.githubusercontent.com/u/2133004?v=4)](https://github.com/ataylorme "ataylorme (1 commits)")

---

Tags

hacktoberfestmu-pluginpantheonwordpress

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/pantheon-systems-pantheon-wp-main/health.svg)

```
[![Health](https://phpackages.com/badges/pantheon-systems-pantheon-wp-main/health.svg)](https://phpackages.com/packages/pantheon-systems-pantheon-wp-main)
```

###  Alternatives

[roots/bedrock

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

6.5k441.8k2](/packages/roots-bedrock)[akaunting/laravel-money

Currency formatting and conversion package for Laravel

7825.3M18](/packages/akaunting-laravel-money)[cognesy/instructor-php

The complete AI toolkit for PHP: unified LLM API, structured outputs, agents, and coding agent control

310107.9k1](/packages/cognesy-instructor-php)[blair2004/nexopos

The Free Modern Point Of Sale System build with Laravel, TailwindCSS and Vue.js.

1.2k2.3k](/packages/blair2004-nexopos)[lullabot/drainpipe

An automated build tool to allow projects to have a set standardized operations scripts.

41716.4k2](/packages/lullabot-drainpipe)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)

PHPackages © 2026

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