PHPackages                             boxuk/wp-iconography - 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. boxuk/wp-iconography

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

boxuk/wp-iconography
====================

Adds Material Icons to the Block Editor

0.0.11(1y ago)19.1k↓78.3%PHP

Since Jul 11Pushed 2mo ago3 watchersCompare

[ Source](https://github.com/boxuk/wp-iconography)[ Packagist](https://packagist.org/packages/boxuk/wp-iconography)[ RSS](/packages/boxuk-wp-iconography/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (4)Versions (12)Used By (0)

Box UK WordPress Iconography Support
====================================

[](#box-uk-wordpress-iconography-support)

Add the ability to add icons inline to your content in the WordPress block editor.

Quick Start!
------------

[](#quick-start)

Add this plugin to your WordPress site and include a configuration file and it's ready to use!

If you're using composer, then it's as simple as `composer require boxuk/wp-iconography`.

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

[](#configuration)

Configuration files are based on a schema that allows you to quickly define the configuration. They're loaded automatically from `wp-content/themes/{theme_name}/icons/*.config.json`, or you can define any custom paths using the filter available:

```
add_filter(
	'boxuk_iconography_files',
	function ( $config_files ) {
		$config_files['example'] = __DIR__ . '/config/example.config.json';
		return $config_files;
	}
);
```

There's also example configuration files included in the plugin, so if you want to load **Material Symbols** you can just load the config included using this snippet:

```
add_filter(
	'boxuk_iconography_files',
	function ( $config_files ) {
		$plugin_dir = WP_CONTENT_DIR . '/mu-plugins/wp-iconography'; // make sure this is valid for your project!

		// Remove any unnecessary
		$config_files['material-symbols-outlined']        = $plugin_dir . '/config/material-symbols-outlined.config.json';
		$config_files['material-symbols-outlined-filled'] = $plugin_dir . '/config/material-symbols-outlined-filled.config.json';
		$config_files['material-symbols-sharp']           = $plugin_dir . '/config/material-symbols-sharp.config.json';
		$config_files['material-symbols-sharp-filled']    = $plugin_dir . '/config/material-symbols-sharp-filled.config.json';
		$config_files['material-symbols-rounded']         = $plugin_dir . '/config/material-symbols-rounded.config.json';
		$config_files['material-symbols-rounded-filled']  = $plugin_dir . '/config/material-symbols-rounded-filled.config.json';
		return $config_files;
	}
);
```

There's loads of filters available to change the way icons load, so feel free to look through the source code at the available filters. And if there's function that doesn't work for you, PRs are always welcome!

Configuration Schema
--------------------

[](#configuration-schema)

The Schema for configuration includes:

- **Title** - the name output in the editor.
- **Name** - the unique key/name for the icon set. I'd recommend `namespace/name` format.
- **Tag Name** - this is the HTML tag that will be used to generate the output for the icon.
- **Class Name** - this is used to generate the output for the icon
- **URL** - the CSS file to load
- **Additional CSS** - any inline CSS to include that might be relevant.
- **Icons** - an array of:
    - **Label** - the value to use in the admin interface. Used for searches and is displayed on hover.
    - **Content** - the content inside the HTML generated.

Sample JSON file:

```
{
	"title": "Example",
	"name": "boxuk/example",
	"tagName": "span",
	"className": "boxuk-icon-example",
	"url": "...",
	"additionalCSS": ".boxuk-icon-example { font-weight: 700; }",
	"icons": [
		{ "label": "Example", "content": "example-content" }
	]
}
```

Generated output:

```
example-content
```

Contributing
------------

[](#contributing)

Please do not submit any Pull Requests here. They will be closed.
-----------------------------------------------------------------

[](#please-do-not-submit-any-pull-requests-here-they-will-be-closed)

Please submit your PR here instead:

This repository is what we call a "subtree split": a read-only subset of that main repository. We're looking forward to your PR there!

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance67

Regular maintenance activity

Popularity24

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity37

Early-stage or recently created project

 Bus Factor1

Top contributor holds 50.9% 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 ~21 days

Recently: every ~37 days

Total

11

Last Release

507d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3c8c170d78af034f9aee1c84e279b97e5b61b549ce8b8519ed8da81402ac8e96?d=identicon)[BoxUK](/maintainers/BoxUK)

---

Top Contributors

[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (28 commits)")[![github-actions[bot]](https://avatars.githubusercontent.com/in/15368?v=4)](https://github.com/github-actions[bot] "github-actions[bot] (25 commits)")[![houdmont](https://avatars.githubusercontent.com/u/634281?v=4)](https://github.com/houdmont "houdmont (1 commits)")[![jdamner](https://avatars.githubusercontent.com/u/482959?v=4)](https://github.com/jdamner "jdamner (1 commits)")

### Embed Badge

![Health badge](/badges/boxuk-wp-iconography/health.svg)

```
[![Health](https://phpackages.com/badges/boxuk-wp-iconography/health.svg)](https://phpackages.com/packages/boxuk-wp-iconography)
```

###  Alternatives

[firefly-iii/data-importer

Firefly III Data Import Tool.

8035.8k](/packages/firefly-iii-data-importer)[swaggest/php-code-builder

Swaggest JSON-schema enabled PHP code builder

77499.1k5](/packages/swaggest-php-code-builder)[netgen/layouts-core

Netgen Layouts enables you to build and manage complex web pages in a simpler way and with less coding. This is the core of Netgen Layouts, its heart and soul.

3692.1k16](/packages/netgen-layouts-core)[swaggest/json-cli

JSON CLI tool (diff, rearrange, pretty print, minify, yaml convert, etc...)

8018.3k1](/packages/swaggest-json-cli)[hi-folks/data-block

Data class for managing nested arrays and JSON data.

1462.9k](/packages/hi-folks-data-block)[glpi-project/inventory_format

GLPI Inventory format lib

10517.4k](/packages/glpi-project-inventory-format)

PHPackages © 2026

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