PHPackages                             flexpress/component-plugin - 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. flexpress/component-plugin

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

flexpress/component-plugin
==========================

Base plugin for WordPress plugin creation

v1.0.1(11y ago)11564MITPHP

Since Aug 26Pushed 11y ago1 watchersCompare

[ Source](https://github.com/FlexPress/component-plugin)[ Packagist](https://packagist.org/packages/flexpress/component-plugin)[ RSS](/packages/flexpress-component-plugin/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (3)Used By (4)

FlexPress plugin component
==========================

[](#flexpress-plugin-component)

Note there is a boilerplate framework you can use instead of trying to use this manually:

```
composer create-project flexpress/plugin-framework

```

Creating a concreate class
--------------------------

[](#creating-a-concreate-class)

You need to create a concreate class that extends the Abstract Plugin class:

```
class MyPlugin extends AbstractPlugin
{
}

```

You can optionally override the init method like this:

```
class MyPlugin extends AbstractPlugin
{
  public function init($file)
  {
    parent::init($file);
  }
}

```

This allows you to add your initalisation code for helpers like the taxonomy and post types components.

Install via pimple
------------------

[](#install-via-pimple)

Once you are all done setting up your class you need to add the config to pimple:

```
$pimple['myPlugin'] = function(){
  return new MyPlugin();
};

```

Usage
-----

[](#usage)

Finally to set it up, grab it from pimple and call the init method with the current file, which should be the pluginsname.php file in the root of the plugin folder:

```
$plugin = $pimple['myPlugin'];
$plugin->init(__FILE__);

```

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity64

Established project with proven stability

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

Total

2

Last Release

4274d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/2b794650fae4ab8d86e8550fa2e0cd8658323e07a8d78b3e96d0bc373bc88d2a?d=identicon)[timperry](/maintainers/timperry)

### Embed Badge

![Health badge](/badges/flexpress-component-plugin/health.svg)

```
[![Health](https://phpackages.com/badges/flexpress-component-plugin/health.svg)](https://phpackages.com/packages/flexpress-component-plugin)
```

###  Alternatives

[tuck/sort

Syntactic sugar for PHP's sorting

11547.3k](/packages/tuck-sort)[rezozero/canonical-email

Simple PHP library to canonize emails address from gmail.com or other providers that allow several forms of email.

1162.0k](/packages/rezozero-canonical-email)[demency/nova-gridder

A Laravel Nova Package for resource details grids.

1615.1k](/packages/demency-nova-gridder)[kijtra/textdiff

Simple text diff Class. 簡易的なテキスト比較ライブラリです。

491.5k](/packages/kijtra-textdiff)

PHPackages © 2026

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