Skip to content
WordPress.org
  • Showcase
  • Plugins
  • Themes
  • Hosting
  • News
    • Learn WordPress
    • Documentation
    • Education
    • Forums
    • Developers
    • Blocks
    • Patterns
    • Photos
    • Openverse ↗︎
    • WordPress.tv ↗︎
    • About WordPress
    • Make WordPress
    • Events
    • Five for the Future
    • Enterprise
    • Gutenberg ↗︎
    • Job Board ↗︎
  • Swag ↗︎
  • Get WordPress
Get WordPress
WordPress.org

Plugin Directory

EnumGuard

  • Submit a plugin
  • My favorites
  • Log in
  • Submit a plugin
  • My favorites
  • Log in

EnumGuard

By Alex Hedström
Download
  • Details
  • Reviews
  • Installation
  • Development
Support

Description

EnumGuard is a focused WordPress plugin that stops attackers from confirming that a username or user ID exists. WordPress still prints those signals by default; EnumGuard closes the usual paths without hiding display names on posts.

Under Settings → EnumGuard you get three tabs:

  • Protections — overview of which discovery paths are closed
  • Settings — toggles and custom login / reset messages
  • About — plugin info

Protections covered:

  • Author ID queries (?author=1) that would otherwise redirect to the author archive
  • Author archives and their feeds
  • Author archive links printed in HTML
  • author-{id} / author-{nicename} body, post, and comment CSS classes
  • Core users sitemap (/wp-sitemap-users-1.xml)
  • Unauthenticated /wp-json/wp/v2/users (including ?rest_route=)
  • REST _embed author payloads and author link headers
  • Login error messages that distinguish “bad username” from “bad password”
  • Lost-password responses (same confirmation whether the account exists)
  • oEmbed author_url / author_name
  • XML-RPC user-listing methods, with an optional full XML-RPC disable
  • Author sitemaps and author archive URLs from Yoast, Rank Math, and The SEO Framework

Recommended protections ship enabled. Gutenberg still reaches the users REST API for logged-in editors. Display names stay visible. Login and reset protections also cover WooCommerce forms when WooCommerce is active. XML-RPC can be turned off completely if you do not need Jetpack, pingbacks, or the WordPress mobile app.

Installation

  1. Upload the enumguard folder to the /wp-content/plugins/ directory.
  2. Activate the plugin through the Plugins menu in WordPress.
  3. Open Settings → EnumGuard to review protections.

FAQ

Will authors still show on posts?

Yes. Display names stay in content. EnumGuard stops login slugs, author archive URLs, and existence oracles—not bylines.

Does this break the block editor?

No. Logged-in users who can edit posts or list users still reach /wp/v2/users. Guests get a generic 404.

What about WooCommerce?

Login and lost-password protections apply to the WooCommerce account forms as well as wp-login.php. Bylines and display names are unchanged.

What about the WordPress mobile app?

The app uses wp.getUsersBlogs. That method is removed while “XML-RPC user methods” is on. Turn that protection off if you need the app. Do not enable “Disable XML-RPC.”

Can I keep author archives for a magazine site?

Yes. Disable “Author archives” and “Author archive links” on the Settings tab. Keep author ID queries blocked so ?author=1 cannot reveal the nicename.

Does uninstall remove settings?

Yes. Uninstall deletes EnumGuard options on the current site, and on every site in a multisite network.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“EnumGuard” is open source software. The following people have contributed to this plugin.

Contributors
  • Alex Hedström

Translate “EnumGuard” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.0.0

  • Initial release.

Meta

  • Version 1.0.0
  • Last updated 1 day ago
  • Active installations 10+
  • WordPress version 6.3 or higher
  • Tested up to 7.1.1
  • PHP version 7.4 or higher
  • Tags
    loginrest-apisecurityuser enumerationxml-rpc
  • Advanced View

Ratings

No reviews have been submitted yet.

Your review

See all reviews

Contributors

  • Alex Hedström

Support

Got something to say? Need help?

View support forum

  • About
  • News
  • Hosting
  • Privacy
  • Showcase
  • Themes
  • Plugins
  • Patterns
  • Learn
  • Documentation
  • Developers
  • WordPress.tv ↗
  • Get Involved
  • Events
  • Donate ↗
  • Swag ↗
  • WordPress.com ↗
  • Matt ↗
  • bbPress ↗
  • BuddyPress ↗
WordPress.org
WordPress.org
  • Visit our X (formerly Twitter) account
  • Visit our Bluesky account
  • Visit our Mastodon account
  • Visit our Threads account
  • Visit our Facebook page
  • Visit our Instagram account
  • Visit our LinkedIn account
  • Visit our TikTok account
  • Visit our YouTube channel
  • Visit our Tumblr account
Code is Poetry
The WordPress® trademark is the intellectual property of the WordPress Foundation.