Skip to content

Stored data

The plugin uses no custom database tables and no REST API. State lives in a handful of options, one transient, and one user meta key.

Option Purpose
wcmp_general_settings Avatar toggle, menu layout, sidebar position, default endpoint. Registered with register_setting().
wcmp_style_settings The six menu and log out colours. Registered with register_setting().
wcmp_endpoints_settings Endpoint, group and link definitions plus the drag order. Registered with register_setting(). On save, default-endpoint slugs are mirrored to the matching WooCommerce core options (woocommerce_myaccount_*_endpoint).
wcmp-users-avatar-ids A flat list of uploaded avatar attachment ids, used to scope the media library.
woo-custom-my-account-page_license_key, woo-custom-my-account-page_license The preset free license for automatic updates, seeded once on activation.

Settings are read through a single assembler (wcmp_settings_data()) that merges saved values over the defaults, so a missing key always falls back to a sane default.

Option Purpose
wcmp_endpoint A pre-1.x endpoint store, migrated in place on init the first time it is seen.
wcmp_endpoint_backup_pre_{version} A one-time, version-suffixed backup written before that migration.
Transient Purpose
wcmp_flush_rewrite_rules Set for 60 seconds when endpoint settings are saved. On the next init the plugin flushes rewrite rules and deletes the transient, so new endpoint URLs resolve without a manual permalink save.
Key Purpose
wb-wcmp-avatar The member’s uploaded avatar attachment id. Overrides Gravatar site-wide while the avatar feature is enabled.

Deleting the plugin runs a full clean-up. It:

  • Deletes every uploaded avatar attachment tracked in wcmp-users-avatar-ids.
  • Deletes the wb-wcmp-avatar user meta for all users.
  • Deletes the settings options, the avatar-index option, the legacy wcmp_endpoint option and every wcmp_endpoint_backup_pre_* backup, the legacy state options, the three license options, and the rewrite-flush transient.
  • Flushes rewrite rules to remove the custom endpoints.