PHPackages                             automattic/jetpack-newsletter - 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. automattic/jetpack-newsletter

ActiveJetpack-library

automattic/jetpack-newsletter
=============================

Jetpack Newsletter functionality

v0.6.2(1mo ago)01.1k↓36.4%1GPL-2.0-or-laterPHPPHP &gt;=7.2CI passing

Since Dec 1Pushed 1mo agoCompare

[ Source](https://github.com/Automattic/jetpack-newsletter)[ Packagist](https://packagist.org/packages/automattic/jetpack-newsletter)[ RSS](/packages/automattic-jetpack-newsletter/feed)WikiDiscussions trunk Synced 1mo ago

READMEChangelog (10)Dependencies (19)Versions (18)Used By (1)

Jetpack Newsletter
==================

[](#jetpack-newsletter)

This package provides some of the newsletter functionality for Jetpack, including:

- **Settings page** — A wp-admin settings screen for newsletter configuration (`Jetpack > Newsletter`).
- **URL helper** — Centralized logic for generating the correct newsletter settings URL based on site type and configuration.
- **Reader link** — An admin bar link to the WordPress.com Reader.

Other functionality remains in the subscriptions module of Jetpack itself.

Initialization
--------------

[](#initialization)

Both `Settings` and `Reader_Link` use singleton-style initialization. Call their `init()` methods early (e.g., on `plugins_loaded`):

```
use Automattic\Jetpack\Newsletter\Settings;
use Automattic\Jetpack\Newsletter\Reader_Link;

Settings::init();
Reader_Link::init();
```

Settings page
-------------

[](#settings-page)

The settings page is controlled by the `jetpack_wp_admin_newsletter_settings_enabled` filter (defaults to `true`). It registers a `Jetpack > Newsletter` submenu page in wp-admin with a React-based settings UI.

### Filters

[](#filters)

#### `jetpack_wp_admin_newsletter_settings_enabled`

[](#jetpack_wp_admin_newsletter_settings_enabled)

Controls whether the new wp-admin newsletter settings page is used. Defaults to `true`. When `false`, the existing settings pages are used instead (Calypso on WoA/Simple sites, the Jetpack Settings `#/newsletter` tab on standalone Jetpack sites). This filter will be removed in a future release.

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

#### `jetpack_show_newsletter_menu_item`

[](#jetpack_show_newsletter_menu_item)

Controls visibility of the `Jetpack > Newsletter` menu item when the settings page is enabled. Defaults to `true`. Set to `false` to hide the menu item while keeping the page accessible via direct URL.

Only takes effect when `jetpack_wp_admin_newsletter_settings_enabled` is `true`.

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

### Behavior by site type

[](#behavior-by-site-type)

Site typeSettings enabled = falseSettings enabled = true**Standalone Jetpack**No menu item. Tab in Jetpack Settings `#/newsletter`.`Jetpack > Newsletter` menu item linking to wp-admin settings page.**WoW**`Jetpack > Newsletter` menu item linking to Calypso.`Jetpack > Newsletter` menu item linking to wp-admin settings page.**Simple**`Jetpack > Newsletter` menu item linking to Calypso.`Jetpack > Newsletter` menu item linking to wp-admin settings page.On WoW and Simple sites, the menu item when `settings_enabled = false` is added by `jetpack-mu-wpcom`'s `wpcom-admin-menu.php`, not by this package.

### Reading page notice

[](#reading-page-notice)

When the subscriptions module is active, a notice is added to the wp-admin **Settings → Reading** page next to the "For each post in a feed" option. It clarifies that the RSS excerpt setting does not control newsletter emails and links to the Newsletter settings page.

URL helper
----------

[](#url-helper)

`Urls::get_newsletter_settings_url()` returns the appropriate newsletter settings URL based on site type and filter state.

Reader link
-----------

[](#reader-link)

### `activate_on_connection()`

[](#activate_on_connection)

`Reader_Link::activate_on_connection()` auto-activates the `wpcom-reader` module when a site is first connected to WordPress.com. It skips activation if modules were previously initialized (e.g., the user disconnected and reconnected), respecting prior module choices.

Using this package in your WordPress plugin
-------------------------------------------

[](#using-this-package-in-your-wordpress-plugin)

If you plan on using this package in your WordPress plugin, we would recommend that you use [Jetpack Autoloader](https://packagist.org/packages/automattic/jetpack-autoloader) as your autoloader. This will allow for maximum interoperability with other plugins that use this package as well.

Security
--------

[](#security)

Need to report a security vulnerability? Go to  or directly to our security bug bounty site .

License
-------

[](#license)

Jetpack Newsletter is licensed under [GNU General Public License v2 (or later)](./LICENSE.txt)

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance89

Actively maintained with recent releases

Popularity20

Limited adoption so far

Community22

Small or concentrated contributor base

Maturity28

Early-stage or recently created project

 Bus Factor3

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

Total

16

Last Release

57d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7c5869ecbb8e0eac7e8b8e0f3cf7bdd8d5fcdc4abc10a72281872c53f8639d44?d=identicon)[automattic](/maintainers/automattic)

![](https://www.gravatar.com/avatar/5326730499ec14e274f51b9bcc39db6aac0fb38b33849715aae0e2587a2b93df?d=identicon)[jeherve](/maintainers/jeherve)

---

Top Contributors

[![anomiex](https://avatars.githubusercontent.com/u/1030580?v=4)](https://github.com/anomiex "anomiex (39 commits)")[![dsas](https://avatars.githubusercontent.com/u/93301?v=4)](https://github.com/dsas "dsas (23 commits)")[![manzoorwanijk](https://avatars.githubusercontent.com/u/18226415?v=4)](https://github.com/manzoorwanijk "manzoorwanijk (12 commits)")[![gmjuhasz](https://avatars.githubusercontent.com/u/36671565?v=4)](https://github.com/gmjuhasz "gmjuhasz (10 commits)")[![simison](https://avatars.githubusercontent.com/u/87168?v=4)](https://github.com/simison "simison (9 commits)")[![jeherve](https://avatars.githubusercontent.com/u/426388?v=4)](https://github.com/jeherve "jeherve (6 commits)")[![vianasw](https://avatars.githubusercontent.com/u/298685?v=4)](https://github.com/vianasw "vianasw (6 commits)")[![CGastrell](https://avatars.githubusercontent.com/u/157240?v=4)](https://github.com/CGastrell "CGastrell (6 commits)")[![bindlegirl](https://avatars.githubusercontent.com/u/1242807?v=4)](https://github.com/bindlegirl "bindlegirl (5 commits)")[![tbradsha](https://avatars.githubusercontent.com/u/32492176?v=4)](https://github.com/tbradsha "tbradsha (4 commits)")[![haqadn](https://avatars.githubusercontent.com/u/3737780?v=4)](https://github.com/haqadn "haqadn (4 commits)")[![kraftbj](https://avatars.githubusercontent.com/u/88897?v=4)](https://github.com/kraftbj "kraftbj (2 commits)")[![arcangelini](https://avatars.githubusercontent.com/u/33258733?v=4)](https://github.com/arcangelini "arcangelini (2 commits)")[![chihsuan](https://avatars.githubusercontent.com/u/4344253?v=4)](https://github.com/chihsuan "chihsuan (2 commits)")[![dhasilva](https://avatars.githubusercontent.com/u/8486249?v=4)](https://github.com/dhasilva "dhasilva (2 commits)")[![zaguiini](https://avatars.githubusercontent.com/u/26530524?v=4)](https://github.com/zaguiini "zaguiini (1 commits)")[![Addison-Stavlo](https://avatars.githubusercontent.com/u/28742426?v=4)](https://github.com/Addison-Stavlo "Addison-Stavlo (1 commits)")[![allilevine](https://avatars.githubusercontent.com/u/1689238?v=4)](https://github.com/allilevine "allilevine (1 commits)")[![annacmc](https://avatars.githubusercontent.com/u/30754158?v=4)](https://github.com/annacmc "annacmc (1 commits)")[![ariskataoka](https://avatars.githubusercontent.com/u/509607?v=4)](https://github.com/ariskataoka "ariskataoka (1 commits)")

### Embed Badge

![Health badge](/badges/automattic-jetpack-newsletter/health.svg)

```
[![Health](https://phpackages.com/badges/automattic-jetpack-newsletter/health.svg)](https://phpackages.com/packages/automattic-jetpack-newsletter)
```

###  Alternatives

[automattic/jetpack

Jetpack supercharges your self‑hosted WordPress site with the awesome cloud power of WordPress.com

3621.9k](/packages/automattic-jetpack)

PHPackages © 2026

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