Docs · Customers

Portal

One form to sign in or create an account.

Portal — Factorize → Customers
  • Version 1.3.0
  • Free, no license needed
  • WordPress 6.2+ · PHP 7.4+ · WooCommerce
  • Tested up to WordPress 6.7

Download and install

Download Portal 1.3.0 (.zip, 307 KB)

  1. Go to Plugins → Add New Plugin → Upload Plugin.
  2. Choose the zip you downloaded, then click Install Now.
  3. Click Activate Plugin.
  4. Open Factorize → Portal.

Already installed? Updates arrive in Plugins like any other plugin. Full install guide

Where to find it

Factorize → CustomersMy Account

What it does

  • Asks for an email first.
  • Existing accounts get a password field. New ones are created on the spot.
  • Optional phone number at registration.

Screenshots

Portal: Settings in wp-admin
Settings in wp-admin
Portal: What customers see on a phone
What customers see on a phone

What it does for you

The logged-out My Account page greets every visitor with two stacked forms and makes them decide which one they are. Most shoppers do not remember whether they have an account, guess wrong, hit an error, and give up. Portal replaces the fork with one flow: type your email, press Continue, and the page figures out the rest — through WooCommerce’s own forms, nonces, and validation.

Features

  • Email-first panelOne email box and one Continue button instead of stacked Login and Register forms.
  • Live account lookupA nonce-protected AJAX call on your own server checks whether the email has an account.
  • Log in or createExisting accounts get the password field; new visitors set a password (and optional phone) and are registered instantly through the real hidden form.
  • Optional phone at sign-upFormat-validated only when provided; saved to the standard billing_phone meta for pickup and auction alerts.
  • Progressive enhancementNo JavaScript? The classic two-form page. Lookup fails? Falls back to the standard forms. Nobody is locked out.
  • FeatherweightOne dependency-free script, loaded only on the logged-out account page.

Use cases

A store reducing login-versus-registration friction on My Account.

Example

Enter an existing email to reveal login; use a new test email to reach registration.

Quick setup

  1. Activate (WooCommerce required).
  2. WooCommerce → Settings → Accounts & Privacy: allow account creation on the My account page.
  3. Log out and visit /my-account: the single panel appears.

Configuration

keydefaulteffect
phone_field_enabledtruerender, validate, and save the optional phone field

Set any subset with WP-CLI — wp option update factorize-portal_options '{"key":"value"}' --format=json — or return values from the factorize-portal_config filter in a small plugin. Legacy empire-* option names are still read.

No settings screen by design. The et-portal classes are styled by the Empire theme; other themes add a few rules.

Step-by-step guide

  1. Register a new customerEnter an unknown email → “No account found” → set a password (and phone) → Create account: logged in, welcome email sent.
  2. Return as that customerEnter the same email: the password field appears with Remember me and Lost your password.
  3. Turn the phone field offwp option update factorize-portal_options '{"phone_field_enabled":false}' --format=json

Q&A

Does it replace WooCommerce’s login?

No — it decides which of the two real forms to submit; hooks and validation run untouched.

Does any data leave my server?

Only the AJAX call to your own admin-ajax.php.

Bots?

Instant registration attracts them; reCAPTCHA or Turnstile can be wired once you pick one and supply keys.

Roadmap

  • Google / Apple one-tap sign-in
  • Magic-link login
  • SMS one-time codes
  • Passkeys

What I need from you

The inputs only the store owner can supply — keys, wording, photos, decisions, hardware — with the exact screen or command for each: Factorize Portal — what I need from you (PDF).

Recent changes

  • 1.3.0
    • Preview of the sign-in box; the Google Client ID example now passes its own check.
  • 1.2.4
    • Suite hub 1.12.3: the support bubble lifts above the save bar while the bar is on screen (on phones it no longer covers Save).
  • 1.2.3
    • Suite hub 1.12.2: an SEO tab on the Factorize dashboard for the new SEO modules.
Full changelog

Try it in the sandbox