WP Manifestindependent plugin directory
manifest / admin / rh-admin-utils

RH Admin Utilities WP Registry grade C-. High-severity findings · 1 findingWP RegistryHigh-severity findings · 1 findingOpen the reportC-

A WordPress utility plugin I use on all my websites 🥞

★ 0stars
346release downloads
≈10active sites
28composer installs
v4.1.3latest · 15d ago

Install

Download rh-admin-utils.zip From the v4.1.3 release on GitHub, Oct 8, 2026

Upload it under Plugins → Add New Plugin → Upload Plugin, then activate.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/hirasso/rh-admin-utils/releases/download/v4.1.3/rh-admin-utils.zip

On Packagist as hirasso/rh-admin-utils:

composer require hirasso/rh-admin-utils
Updates itself. It ships its own updater (Plugin Update Checker), so new versions appear under Dashboard → Updates.

A WordPress utility plugin 🥞

[!IMPORTANT] This plugin is provided without public support. No issues, no discussions, no PRs accepted. You can browse the source code and pick and choose what you find useful for your projects.

Docs

Things this plugin does (I know, too many 🤷‍♂️)

  • Adds a publish/save button to the admin bar
  • Removes plugin ads (Looking at you, Yoast SEO...)
  • Allows users with role "Editor" to add new users (highest role: editor)
  • Adds opt-in page resitrictions that can only be changed by Administrators (slug, hierarchy, page template, ...)
  • Adds an environment switcher
  • Adds several ACF field enhancements (browse the source of the scr/ACF... classes)
  • Adds a robust embed cache
  • Disables comments
  • Adds a new role "Editor in chief" that can update the WP core and plugins
  • Redirects uppercase URLs to lowercase on the frontend
  • Adds a badge with a count to the admin menu for pending reviews
  • Adds a download button to TinyMCE (classic editor)
  • if WP Super Cache is installed, adds a button to the admin bar to clear the whole cache
  • Adds a WP CLI command wp rhau acf-sync-field-groups to sync all ACF field groups
  • Adds a WP CLI command wp rhau simply-static run to generate a static version of your site (requires the plugin simply-static to be installed)

Other Features

  • Ships with an instance of Plugin Update Checker to support updates directly from GitHub
  • Does not rely on the WP.org plugin repository

Releases

Newest 25 of 60 recorded releases. Each count is every asset in that release; expand a row for the breakdown.

Tag
Published
Assets
Downloads
v4.1.3 latest
Oct 8, 2026 15d ago
rh-admin-utils.zip +1 asset
10
rh-admin-utils.zip10
assets.zip0
Oct 5, 2026 18d ago
rh-admin-utils.zip +1 asset
7
rh-admin-utils.zip7
assets.zip0
Oct 1, 2026 21d ago
rh-admin-utils.zip +1 asset
6
rh-admin-utils.zip6
assets.zip0
Sep 29, 2026 23d ago
rh-admin-utils.zip +1 asset
4
rh-admin-utils.zip4
assets.zip0
Sep 29, 2026 24d ago
rh-admin-utils.zip +1 asset
3
rh-admin-utils.zip3
assets.zip0
Sep 28, 2026 24d ago
rh-admin-utils.zip +1 asset
3
rh-admin-utils.zip3
assets.zip0
Sep 28, 2026 24d ago
rh-admin-utils.zip +1 asset cohort
11
rh-admin-utils.zip5
assets.zip6
Sep 23, 2026 29d ago
rh-admin-utils.zip +1 asset
5
rh-admin-utils.zip5
assets.zip0
Sep 23, 2026 1mo ago
rh-admin-utils.zip +1 asset
0
rh-admin-utils.zip0
assets.zip0
Aug 18, 2026 2mo ago
rh-admin-utils.zip +1 asset
10
rh-admin-utils.zip10
assets.zip0
Aug 17, 2026 2mo ago
rh-admin-utils.zip +1 asset
4
rh-admin-utils.zip4
assets.zip0
Aug 6, 2026 2mo ago
rh-admin-utils.zip +1 asset
4
rh-admin-utils.zip4
assets.zip0
Aug 3, 2026 2mo ago
rh-admin-utils.zip +1 asset
3
rh-admin-utils.zip3
assets.zip0
Jul 28, 2026 2mo ago
rh-admin-utils.zip +1 asset
5
rh-admin-utils.zip5
assets.zip0
Jul 28, 2026 2mo ago
rh-admin-utils.zip +1 asset
0
rh-admin-utils.zip0
assets.zip0
Jul 23, 2026 3mo ago
rh-admin-utils.zip +1 asset
5
rh-admin-utils.zip5
assets.zip0
Jul 22, 2026 3mo ago
rh-admin-utils.zip +1 asset
3
rh-admin-utils.zip3
assets.zip0
Jul 6, 2026 3mo ago
rh-admin-utils.zip +1 asset
13
rh-admin-utils.zip13
assets.zip0
Jun 7, 2026 4mo ago
rh-admin-utils.zip +1 asset
16
rh-admin-utils.zip16
assets.zip0
May 20, 2026 5mo ago
rh-admin-utils.zip +1 asset
7
rh-admin-utils.zip7
assets.zip0
May 20, 2026 5mo ago
rh-admin-utils.zip +1 asset
1
rh-admin-utils.zip1
assets.zip0
May 6, 2026 5mo ago
rh-admin-utils.zip +1 asset
6
rh-admin-utils.zip6
assets.zip0
May 1, 2026 5mo ago
rh-admin-utils.zip +1 asset
4
rh-admin-utils.zip4
assets.zip0
Apr 27, 2026 5mo ago
rh-admin-utils.zip +1 asset
4
rh-admin-utils.zip4
assets.zip0
Apr 24, 2026 6mo ago
rh-admin-utils.zip +1 asset
2
rh-admin-utils.zip2
assets.zip0
All releases on GitHub →

Active-site estimate ≈10 comes from the v4.0.0 cohort. Method.

C- grade

Security

RH Admin Utilities 1.0.0 · audited by WP Registry

High-severity findings.

1 high
Audited release
1.0.0
Findings
1
Worst severity
high
Content hash
5c11129134eefd19a7b1a9f2…

Findings

  • high Unauthenticated admin_init deactivates and deletes hardcoded plugins (including wp.org Disable Comments)

    missing_capability

    AdminUtils hooks admin_init to delete_conflicting_plugins() with no current_user_can('delete_plugins'|'activate_plugins'|'manage_options') and no nonce. For each hardcoded slug, if WP_PLUGIN_DIR/<slug> exists it calls deactivate_plugins($slug, true) then delete_plugins($slug). Neither core function performs an authorization check; they expect the caller to have already gated the request. wp-admin/admin-ajax.php and admin-post.php run do_action('admin_init') before dispatching wp_ajax / wp_ajax_nopriv, so an unauthenticated GET to admin-ajax.php?action=heartbeat (or any action) is sufficient. The same path also runs for a Subscriber loading /wp-admin/profile.php. The list includes disable-comments/disable-comments.php, which is the main file of the official wordpress.org Disable Comments plugin (1M+ installs), not an rh- prefixed first-party slug. On hosts using the direct filesystem method (typical when the web user owns wp-content), delete_plugins removes the directory without FTP credentials. Observable: those plugin folders vanish from wp-content/plugins and drop out of the active_plugins option. $_GET['rhau-deleted-depreated'] is only a redirect-loop guard, not an authz token.

    AdminUtils.php:9-16,21,30-33,107-124

    Recommendation

    Do not run plugin deletion on admin_init. Require current_user_can('delete_plugins') (and is_user_logged_in()) before calling deactivate_plugins/delete_plugins, and confirm with a manage_options admin notice + check_admin_referer rather than deleting automatically. Bail out unless is_admin() && !wp_doing_ajax() && !defined('DOING_CRON'). Remove disable-comments/disable-comments.php from the list or match on plugin header/Name so the wordpress.org Disable Comments plugin is not destroyed as collateral. Prefer deactivate-only, or delete only rh- prefixed first-party slugs.

WP Registry hashes the installable build and reports on that exact bytes-for-bytes copy. Embargoed findings are withheld until they are disclosed, so a clean verdict means nothing public is outstanding. WP Manifest does not audit code itself.