Skip to content

Accept-invite signup page has no visible "Log in" affordance for existing users #110167

Description

@evilluendas

Summary

When a logged-out user with an existing WordPress.com account follows an /accept-invite/… URL, they land on a Create an account signup page with no visible path to sign in. The "Already have a WordPress.com account? / Log in instead" footer link that the legacy signup form rendered is no longer surfaced on this page.

Steps to reproduce

  1. As a site admin, generate an invite (per-user or group invite link).
  2. Copy the /accept-invite/{site_id}/{invite_key} URL.
  3. Open it in a private/incognito window so you're logged out.

Observed: The page renders the "social-first" signup variant (WordPress logo top-left, "Create an account for {Site}" heading, email field + Continue button, OR divider, Google/Apple/GitHub buttons). No "Log in instead" link anywhere. The only way to recover is to type an existing email and trigger the onCreateAccountErrorisExistingAccountError auto-redirect path, which is invisible to the user.

Expected: A clear "Already have a WordPress.com account? / Log in" affordance, equivalent to what the legacy signup flow rendered.

Root cause

The P2 and generic logged-out invite flows both pass a footerLink prop into SignupForm:

  • client/my-sites/invites/p2/invite-accept-logged-out.jsxfooterLink={ renderFooterLink( props ) }
  • client/my-sites/invites/invite-accept-logged-out/index.jsx → same pattern

SignupForm routes to SignupFormSocialFirst in the isSocialFirst code path. That component (client/blocks/signup-form/signup-form-social-first.tsx) does not render the footerLink prop on either its initial or email screens. As a result, any downstream code that tries to pass a "Log in instead" footer is silently dropped.

The component does receive a logInUrl prop and uses it internally for the existing-account auto-redirect, but no visible link is rendered.

Impact

Every /accept-invite/… URL shared with a user who already has a WordPress.com account presents a dead-end signup flow. Affects P2, standard WP.com invites, and group-invite links. Users either guess to sign in elsewhere first, or give up.

Suggested fix

Render the passed footerLink (or an equivalent static "Already have a WordPress.com account? Log in" link built from logInUrl) at the bottom of the initial and/or email screens in signup-form-social-first.tsx, so every signup entry point — including /accept-invite/… — has a visible path for existing users.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions