WP-Members Username API self-updates
WordPress plugin
by MMM Delicious · github.com/mmm-delicious/wp-members-username-api
★ 0stars
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/mmm-delicious/wp-members-username-api/archive/refs/heads/main.zipShips its own WordPress updater (Plugin Update Checker), so new versions show up under Dashboard → Updates.
MMM Username Registration API
A WordPress plugin that exposes a REST API endpoint for user registration, designed for use with Elementor forms and WP-Members.
Features
- REST endpoint at
POST /wp-json/mmm/v1/register - Accepts JSON or form-encoded body, including Elementor's nested
fieldsstructure - Creates new users with
subscriberrole and WP-Members pending activation state - If email already exists and last name matches, updates the user's contact info instead of creating a duplicate
- Auto-generates a username (
firstinitial + lastname) if none provided, with numeric suffix to avoid conflicts - Maps submitted fields to WP-Members and WooCommerce-compatible user meta keys
- All error cases return silent success (200) to avoid exposing registration state to bots
Requirements
- WordPress 5.0+
- PHP 7.4+
- WP-Members plugin
Installation
- Upload the
wp-members-update-creates-userfolder to/wp-content/plugins/ - Activate the plugin through the Plugins menu in WordPress
- Point your Elementor form's webhook action to
/wp-json/mmm/v1/register
Note: If upgrading from a version where the main file was named
wp-members-update-create.php, deactivate the old plugin and activate the renamed version.
Endpoint
POST /wp-json/mmm/v1/register
Content-Type: application/json
Accepted Fields
| Field | Meta Key | Notes |
|---|---|---|
email |
user_email |
Required |
first_name |
first_name |
Required |
last_name |
last_name |
Required |
username |
user_login |
Optional — auto-generated if blank or taken |
phone / mobile_phone |
phone1 |
|
address |
billing_address_1 |
|
city |
billing_city |
|
state |
billing_state |
|
zip |
billing_postcode |
|
ssn |
LastSNN |
Last 4 digits for verification |
job_title |
job_title |
|
job_classification / classification |
job_classification |
|
accept |
newsletter |
Security Notes
- The endpoint is publicly accessible (
permission_callback: __return_true) by design — it is a registration endpoint - All input is sanitized before use or storage
- Silent 200 responses on all error paths prevent enumeration of existing users
Changelog
3.1
- Renamed main file to match plugin folder name (
wp-members-update-creates-user.php) - Standardized ABSPATH guard syntax
- Added plugin header fields:
Requires at least,Requires PHP,Tested up to - Added README.md
3.0
- Added support for existing user update (matched by email + last name)
- Added Elementor nested field flattening
Earlier
- Initial registration endpoint