PHPackages                             kaiseki/wp-plugin-ninja-forms-user-management - 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. kaiseki/wp-plugin-ninja-forms-user-management

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

kaiseki/wp-plugin-ninja-forms-user-management
=============================================

WordPress helper for the Ninja Forms User Management plugin: filter the registered user settings via container config

1.0.0(1mo ago)0550MITPHPPHP ^8.2CI passing

Since Jun 2Pushed 3w ago2 watchersCompare

[ Source](https://github.com/kaisekidev/kaiseki-wp-plugin-ninja-forms-user-management)[ Packagist](https://packagist.org/packages/kaiseki/wp-plugin-ninja-forms-user-management)[ Docs](https://github.com/kaisekidev/kaiseki-wp-plugin-ninja-forms-user-management)[ RSS](/packages/kaiseki-wp-plugin-ninja-forms-user-management/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (18)Versions (3)Used By (0)

kaiseki/wp-plugin-ninja-forms-user-management
=============================================

[](#kaisekiwp-plugin-ninja-forms-user-management)

WordPress helper for the Ninja Forms User Management plugin: filter the registered user settings via container config.

A single `kaiseki/wp-hook` `HookProviderInterface` wired through `ConfigProvider`:

- **`FilterUserSettings`** — hooks the `ninja_forms_register_user_settings` filter and deep-merges your configured `user_settings` into the settings Ninja Forms User Management registers. Keys whose target setting isn't present in the incoming settings are dropped, so you only ever extend settings the plugin actually exposes.

Installation
------------

[](#installation)

```
composer require kaiseki/wp-plugin-ninja-forms-user-management
```

Requires PHP 8.2 or newer.

Usage
-----

[](#usage)

Register `ConfigProvider` with your laminas-style config aggregator, configure the `ninja_forms_user_management` key, and activate the provider via `kaiseki/wp-hook`:

```
use Kaiseki\WordPress\NinjaFormsUserManagement\FilterUserSettings;

return [
    'ninja_forms_user_management' => [
        // Merged into the settings registered on `ninja_forms_register_user_settings`.
        // Keyed by setting name; entries whose key is absent in the incoming
        // settings are skipped.
        'user_settings' => [
            'user_role' => [
                'name'  => 'user_role',
                'type'  => 'select',
                'label' => __('User Role', 'my-textdomain'),
            ],
        ],
    ],
    'hook' => [
        'provider' => [
            FilterUserSettings::class,
        ],
    ],
];
```

`ConfigProvider` registers the `FilterUserSettings` factory, which reads `ninja_forms_user_management.user_settings` from the container and injects the shared `Kaiseki\Utility\NestedArray` used for the deep merge.

Development
-----------

[](#development)

```
composer install
composer check   # check-deps, cs-check, phpstan
```

License
-------

[](#license)

MIT — see [LICENSE](LICENSE).

###  Health Score

44

—

FairBetter than 90% of packages

Maintenance95

Actively maintained with recent releases

Popularity15

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 60% 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

Unknown

Total

1

Last Release

31d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/1c3a6b11aea9668c9e9ca0c0f8515ef114d344acb552c695d715d35d5b388ea4?d=identicon)[woda](/maintainers/woda)

---

Top Contributors

[![wolfgangschaefer](https://avatars.githubusercontent.com/u/26325205?v=4)](https://github.com/wolfgangschaefer "wolfgangschaefer (6 commits)")[![davidmondok](https://avatars.githubusercontent.com/u/3883758?v=4)](https://github.com/davidmondok "davidmondok (3 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (1 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/kaiseki-wp-plugin-ninja-forms-user-management/health.svg)

```
[![Health](https://phpackages.com/badges/kaiseki-wp-plugin-ninja-forms-user-management/health.svg)](https://phpackages.com/packages/kaiseki-wp-plugin-ninja-forms-user-management)
```

###  Alternatives

[symfony/dependency-injection

Allows you to standardize and centralize the way objects are constructed in your application

4.2k455.6M9.6k](/packages/symfony-dependency-injection)[illuminate/contracts

The Illuminate Contracts package.

706130.3M13.3k](/packages/illuminate-contracts)[illuminate/container

The Illuminate Container package.

31182.0M2.4k](/packages/illuminate-container)[ecotone/ecotone

Enterprise architecture layer for Laravel and Symfony — CQRS, Event Sourcing, Durable Workflows (Sagas, Orchestrators), Projections, and Outbox messaging via PHP attributes.

564576.7k53](/packages/ecotone-ecotone)[symfony/type-info

Extracts PHP types information.

20069.8M270](/packages/symfony-type-info)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

751291.4k43](/packages/civicrm-civicrm-core)

PHPackages © 2026

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