{CODICTS} Snippets is now available

Voxel Create User From Post

The {CODICTS} Voxel Create User From Post plugin automatically creates (or updates) WordPress user accounts when a Voxel Theme post is submitted or edited. It maps data from Voxel post fields to WordPress user profile fields, enabling use cases where a post submission should also register a corresponding user account.

Installation & Activation

Start by downloading the plugin from the Downloads page on your dashboard on the CoDicts website.

After downloading, install and activate the plugin in WordPress by navigating to “Plugins” > “Add New” > “Upload Plugin” and selecting the downloaded zip file. Click “Install Now” and then “Activate”.

Once activated, navigate to “Create User From Post” in the WordPress admin sidebar to configure field mappings for your post types.


Key Features

FeatureDescription
Post-to-User MappingMap any Voxel post field to a WordPress user profile field (email, name, username, website, bio, password).
Multi-Post-Type SupportConfigure independently for every Voxel post type on your site.
Create & Update ModesCreate new users on first submission; optionally update existing users when the post is edited.
Email-Based DeduplicationUses the email field as the unique identifier — prevents duplicate user accounts.
Flexible PasswordsRandom password generation by default, or map a custom password field with an optional one-click random generator button.
Password Update SwitchA Voxel switcher field can control whether the password gets updated on post edits.
Post Author AssignmentOptionally set the created user as the post’s author, with an optional switch control.
Role-Based RestrictionsOnly specified user roles can trigger user creation when submitting posts.
LinkedIn IntegrationOptional button to fetch fields from LinkedIn (requires the {CODICTS} Voxel LinkedIn Sign In plugin).
Admin & FrontendWorks from both frontend Voxel submissions and WordPress admin post saves.

Common Use Cases

This plugin is useful whenever a Voxel post submission should also create a WordPress user account. For example:

Business directories — When a business listing is submitted, create a user account for that business so they can log in and manage their listing.

Staff/team directories — When a staff member post is created, automatically register a WordPress account for that person.

Membership sites — When a registration-style post is submitted, create the corresponding user account with the appropriate role.


How It Works

When a Voxel post is submitted or updated, the plugin:

1. Checks that user creation is enabled for the post type and that the submitting user’s role is allowed.

2. Reads the field values from the Voxel post and maps them to WordPress user fields based on your configuration.

3. Checks if a user with the mapped email already exists.

4. If no user exists → creates a new WordPress user account. If a user exists and “Update existing user” is enabled → updates their profile. If a user exists and updating is disabled → skips.

5. Optionally assigns the created or matched user as the post’s author.

Note: The email field is the unique identifier. If the email on the post matches an existing WordPress user, the plugin treats them as the same person. If the email field is empty, no user is created.


Configuring a Post Type

Navigate to “Create User From Post” in the WordPress admin sidebar. The settings page lists every registered Voxel post type, each with its own configuration section.

Step 1: Enable User Creation

Check the “Enabled?” toggle for the post type you want to configure.

Step 2: Select Allowed Roles

Under “Enabled for User Roles”, select which user roles can trigger user creation when submitting this post type. Only logged-in users with one of these roles will create users — all others are ignored.

Tip: This controls who can trigger user creation, not what role the created user receives. The created user’s role is set separately (see Step 5).

Step 3: Map Fields

Use the dropdown selectors to map Voxel post fields to WordPress user profile fields:

User FieldRequiredNotes
EmailYesOnly email-type Voxel fields are shown. This is the unique identifier — it must be mapped.
UsernameNoIf not mapped, the email prefix (before the @) is used as the username.
NicknameNoDisplay name shown on the site.
First NameNo
Last NameNo
WebsiteNoOnly URL-type Voxel fields are shown.
Biographical InfoNoUser bio / description.

Step 4: Configure Password Settings

By default, a random secure password is generated for each new user. If you want users to set their own password from a field on the post submission form, configure the password options:

1. Check “Set a password?” to enable custom password mode.

2. Select which Voxel field contains the password.

3. Optionally check “Add random password generator?” — this adds a dice icon button next to the password field on the frontend that generates a random 16-character password with one click.

4. Optionally enable “Use a switch to update password?” and select a Voxel switcher field. When enabled, the password is only updated during post edits if the user turns this switch ON. This prevents accidental password changes.

Note: When using random passwords (the default), the password is generated once on user creation and is never overwritten on post updates. This ensures existing users keep their passwords when posts are edited.

Step 5: Set the Created User’s Role

Under “Assigned User Role”, select the WordPress role that newly created users will receive (e.g., Subscriber, Author, Editor, or any custom role).

Step 6: Enable Update Mode (Optional)

Check “Update existing user?” if you want user profiles to be updated when the corresponding post is edited. When enabled, if a post is edited and the email matches an existing user, the mapped fields (name, nickname, bio, etc.) are updated on the user profile.

Note: Usernames cannot be changed after creation — this is a WordPress limitation. All other mapped fields can be updated.

Step 7: Post Author Assignment (Optional)

Check “Set created user as current post author?” to automatically assign the created or matched user as the author of the submitted post.

Optionally, select a Voxel switcher field to give submitters control over whether author assignment happens on a per-post basis. When a switch is configured, the author is only assigned if the switch is turned ON.

Step 8: LinkedIn Integration (Optional)

If you have the {CODICTS} Voxel LinkedIn Sign In plugin installed and active, you can check “Enable fetch fields from LinkedIn button”. This adds a button to the post submission form that lets users auto-populate fields from their LinkedIn profile.

This option is grayed out if the LinkedIn Sign In plugin is not installed.

Step 9: Save

Click “Save Changes”. Repeat for any other post types you want to configure.


How User Matching Works

The plugin uses the email address as the unique identifier for matching users:

ScenarioWhat Happens
Email doesn’t exist in WordPressA new user is created with the mapped fields.
Email exists + “Update existing user” enabledThe existing user’s profile is updated with the new field values.
Email exists + “Update existing user” disabledNo action — the existing user is left unchanged.
Email field is emptyNo action — the plugin exits silently.

If no username is mapped and one needs to be generated, the plugin uses the part of the email before the @ symbol. If that username is already taken, a unique suffix is appended automatically.


Password Modes

ModeHow to EnableBehavior
Random PasswordDefault (leave “Set a password?” unchecked)A secure random password is generated when the user is created. Never overwritten on post edits.
Custom Password FieldCheck “Set a password?” and select a fieldPassword is taken from the mapped Voxel field. Updated on post edits unless a password switch prevents it.
Custom + Random GeneratorAlso check “Add random password generator?”Same as above, plus a dice icon button appears on the frontend for one-click random password generation.

Frontend Features

Random Password Generator Button

When enabled, a small dice icon appears inside the password field on the Voxel post submission form. Clicking it generates a random 16-character alphanumeric password and fills it into the field.

Switch Defaults

If you’ve configured a password switch or author switch, both default to OFF when the submission form loads. This means users must explicitly turn them on to trigger a password change or author reassignment — preventing accidental changes during routine post edits.


Email Notifications

The plugin automatically suppresses two types of WordPress email notifications during user creation and updates:

1. Password change notification emails (sent to users when their password is updated).

2. New user notification emails (sent to site administrators when a new user is created).

This prevents your team and users from being flooded with automated emails when users are created through post submissions.


Programmatic Trigger (Developers)

If you need to trigger user creation outside the normal post submission flow, you can fire the plugin’s custom action hook from your own code:

do_action( 'codicts-voxel-create-user-from-post::create', $voxel_post );

Pass a Voxel post object. The plugin’s normal validation and creation logic will run against it.


Troubleshooting

“Voxel Theme Not Detected” Error

Ensure the Voxel Theme is installed and set as the active theme. Go to Appearance → Themes to verify. If you’re using a child theme, ensure it correctly references Voxel as the parent theme.

Users Not Being Created

CauseSolution
Post type not enabledGo to settings and check “Enabled?” for the post type.
Email field not mappedThe email mapping is required. Select a Voxel email field in the settings.
Email field empty on the postEnsure the submission form includes a valid email. No user is created without one.
Submitting user’s role not allowedAdd the user’s role to “Enabled for User Roles” in the settings.
User not logged inOnly logged-in users can trigger user creation.

Users Not Being Updated on Post Edits

CauseSolution
“Update existing user?” not checkedEnable this checkbox in the post type settings.
Password not updatingIf a password switch is configured, make sure it’s turned ON before saving the post.
Username not changingUsernames cannot be changed after creation — this is a WordPress limitation.

Random Password Generator Button Not Showing

CauseSolution
Password not enabledCheck “Set a password?” first, then check “Add random password generator?”
No password field mappedSelect a Voxel field for the password mapping.
User role not in allowed listThe generator only appears for users whose roles are in the “Enabled for User Roles” list.
JavaScript errorCheck the browser console for errors.

LinkedIn Button Not Appearing

CauseSolution
LinkedIn plugin not installed or not activeInstall and activate the {CODICTS} Voxel LinkedIn Sign In plugin.
Toggle not enabledCheck “Enable fetch fields from LinkedIn button” in the post type settings.

Settings Page Shows No Post Types

The settings page dynamically lists all registered Voxel post types. If nothing appears, create at least one post type in Voxel’s post type editor, then return to the plugin settings.

Duplicate Usernames

If a username already exists, the plugin automatically appends a unique suffix (e.g., john65a3b2c1). This is normal and prevents creation failures from username collisions.


For further support, visit codicts.com or contact us at support@codicts.com.

CoDicts Co., Ltd. © 2021-2026. All rights reserved