WP Manifestindependent plugin directory
manifest / media / 1-click-woff2-enable-for-wordpress

1-Click WOFF2 Enabler

1-Click WOFF2 Enabler unlocks modern web font uploads on your WordPress site. Activate the plugin and you're done - no settings to configure, no code to paste.

by Billionaires Font · github.com/billionairesfont/1-click-woff2-enable-for-wordpress · website

1stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/billionairesfont/1-click-woff2-enable-for-wordpress/archive/refs/heads/main.zip

Readme

1-Click WOFF2 Enabler for WordPress

Unlock modern web font uploads in your WordPress Media Library — zero configuration, zero bloat.

By default, WordPress blocks uploads of .woff2, .woff, .ttf, and .otf font files through the Media Library — forcing developers to write custom filter code or install bloated, tracking-heavy plugins just to upload a font. 1-Click WOFF2 Enabler fixes this with a single activation. No settings to configure, no code to paste, no frontend overhead.


Table of Contents


Why This Plugin

WordPress core deliberately restricts uploadable MIME types for security reasons, and modern web font formats aren't whitelisted out of the box. That leaves you with three bad options: edit your theme's functions.php, install a heavyweight "font manager" plugin loaded with upsells and tracking, or give up and host your fonts elsewhere.

1-Click WOFF2 Enabler takes a fourth option: a focused, single-purpose plugin that does exactly one thing — safely allow font uploads — and does nothing else.

Features

  • One-click activation — no setup wizard, no settings to fill in.
  • Adds support for .woff2, .woff, .ttf, and .otf uploads.
  • Native WordPress admin UI, built with @wordpress/components for a consistent, on-brand experience.
  • Zero frontend footprint — admin assets load only on the plugin's own settings page.
  • Hardened uploads — re-validates file extensions against approved MIME types via WordPress's built-in wp_check_filetype_and_ext filter to guard against MIME spoofing.
  • Fully translation-ready (i18n) for both PHP and JavaScript strings.
  • No tracking, no analytics, no upsell popups.

Supported Font Formats

Format Extension Use Case
WOFF2 .woff2 Modern, highly compressed, best for production
WOFF .woff Broad legacy browser support
TTF .ttf TrueType, common source format
OTF .otf OpenType, common source format

Installation

Option A — Manual Upload

  1. Download or clone this repository.
  2. Upload the 1-click-woff2-enabler folder to your /wp-content/plugins/ directory.
  3. In your WordPress admin, go to Plugins and activate 1-Click WOFF2 Enabler.

Option B — WordPress Plugins Screen

  1. In your WordPress admin, go to Plugins → Add New.
  2. Upload the plugin .zip file.
  3. Click Activate.

Option C — Composer / Git (developers)

cd wp-content/plugins
git clone https://github.com/BillionairesFont/1-Click-WOFF2-Enable-for-WordPress.git 1-click-woff2-enabler

Then activate it from the WordPress admin Plugins screen.

Usage

  1. Activate the plugin.
  2. Go to Settings → WOFF2 Enabler to confirm font uploads are enabled.
  3. Go to Media → Add New and upload your .woff2, .woff, .ttf, or .otf files like any other media file.
  4. Reference the uploaded font URL in your theme, page builder, or custom @font-face CSS rule.

Works seamlessly with Elementor, Bricks, Divi, and any other page builder or custom theme, since fonts are stored in the standard Media Library and accessible by URL.

How It Works

The plugin hooks into WordPress core's upload_mimes filter to safely whitelist the font MIME types modern sites need. To prevent MIME-spoofing attacks (where a malicious file is renamed to look like a font), every upload is re-validated against its real file signature using WordPress's built-in wp_check_filetype_and_ext filter before it's accepted into the Media Library.

The admin settings screen is a lightweight React application built with @wordpress/components, matching the native WordPress admin look and feel. Its JavaScript and CSS assets are conditionally enqueued — they load only when you're on the plugin's own settings page, so there is no added weight anywhere else in wp-admin or on your live site.

Frequently Asked Questions

Does this plugin slow down my site? No. Admin assets load exclusively on the plugin's own settings page. It adds zero JavaScript and zero CSS to your site's frontend.

Is uploading custom fonts safe? Yes. Every upload is re-validated against approved MIME types using WordPress's built-in wp_check_filetype_and_ext filter before being saved.

Can I use this with page builders like Elementor, Bricks, or Divi? Yes. Once uploaded, font files live in the Media Library and can be referenced by URL from any theme, builder, or custom @font-face rule.

Does this plugin send any data anywhere? No. There is no tracking, no analytics, and no remote calls of any kind.

Where can I get well-optimized WOFF2 fonts to upload? You can convert and download production-ready WOFF2, WOFF, TTF, and OTF font files at Billionaires Font — see Credits below.

Screenshots

  1. Admin dashboard — confirms custom font uploads are enabled.
  2. Media Library — custom font files uploading successfully.

(See the /src directory and the WordPress.org-style readme.txt for additional asset references.)

Project Structure

1-Click-WOFF2-Enable-for-WordPress/
├── .github/                    # GitHub configuration (issue templates, workflows)
├── src/                        # React admin UI source (@wordpress/components)
├── 1-click-woff2-enabler.php   # Main plugin bootstrap file
├── package.json                # Build dependencies and scripts
├── readme.txt                  # WordPress.org-formatted plugin readme
└── README.md                   # This file

Development

This plugin's admin interface is built with the WordPress JavaScript stack (@wordpress/components, @wordpress/scripts).

# Install dependencies
npm install

# Start the development build with file watching
npm start

# Create a production build
npm run build

Requirements

Requirement Version
WordPress 5.8 or later
PHP 7.2 or later
Node.js / npm For local development of the /src admin UI

Changelog

1.0.0

  • Initial release.
  • Enable WOFF, WOFF2, TTF, and OTF uploads via the upload_mimes filter.
  • React-powered admin settings page built with @wordpress/components.
  • Full i18n support for PHP and JavaScript.

Security

This plugin re-validates every upload's real file type using WordPress's built-in wp_check_filetype_and_ext filter, preventing disguised or spoofed files from being accepted as fonts. If you discover a security issue, please open an issue in this repository rather than disclosing it publicly.

Contributing

Issues and pull requests are welcome. If you're proposing a significant change, please open an issue first to discuss what you'd like to change.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/your-feature)
  3. Commit your changes
  4. Push to the branch and open a Pull Request

License

Licensed under the GPLv2 or later — see the GNU General Public License v2.0 for details.

Credits

Developed and maintained by Billionaires Font — a free resource for converting, downloading, and exploring web-optimized fonts (WOFF2, WOFF, TTF, OTF).

If this plugin saved you time, consider checking out the Billionaires Font Converter for generating production-ready font files to upload with it.


Made with care by Billionaires Font

Read the full README on GitHub →