{"id":88654,"date":"2018-07-13T08:56:05","date_gmt":"2018-07-13T08:56:05","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/readministrator-read-only-administrator\/"},"modified":"2026-08-31T07:10:16","modified_gmt":"2026-08-31T07:10:16","slug":"readministrator-read-only-administrator","status":"publish","type":"plugin","link":"https:\/\/kaa.wordpress.org\/plugins\/readministrator-read-only-administrator\/","author":15124511,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.1","stable_tag":"1.0.1","tested":"7.0.4","requires":"4.7","requires_php":"7.0","requires_plugins":null,"header_name":"Readministrator (Read Only Administrator)","header_author":"Dhanendran","header_description":"Allowing users to see the admin settings page. Just Seeing, No edit allowed :) These users will have all the privilege of editors along with that they will have the ability to see the admin settings.","assets_banners_color":"111d30","last_updated":"2026-08-31 07:10:16","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/dhanendran\/wp-readministrator","header_author_uri":"https:\/\/dhanendranrajagopal.me\/","rating":0,"author_block_rating":0,"active_installs":10,"downloads":2366,"num_ratings":0,"support_threads":1,"support_threads_resolved":1,"author_block_count":0,"sections":["description","installation","changelog"],"tags":{"0.0.2":{"tag":"0.0.2","author":"dhanendran","date":"2026-06-16 16:04:25","revision":3574748},"1.0.0":{"tag":"1.0.0","author":"dhanendran","date":"2026-06-17 10:01:33","revision":3575624},"1.0.1":{"tag":"1.0.1","author":"dhanendran","date":"2026-08-31 07:10:16","revision":3673536}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3576203,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3576203,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3576148,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3576187,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3576187,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.0.2","1.0.0","1.0.1"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[83,3897,2218,18591,1253],"plugin_category":[],"plugin_contributors":[142850],"plugin_business_model":[],"class_list":["post-88654","plugin","type-plugin","status-publish","hentry","plugin_tags-admin","plugin_tags-administrator","plugin_tags-options","plugin_tags-read-only","plugin_tags-settings","plugin_contributors-dhanendran","plugin_committers-dhanendran"],"banners":{"banner":"https:\/\/ps.w.org\/readministrator-read-only-administrator\/assets\/banner-772x250.jpg?rev=3576187","banner_2x":"https:\/\/ps.w.org\/readministrator-read-only-administrator\/assets\/banner-1544x500.jpg?rev=3576187","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/readministrator-read-only-administrator\/assets\/icon.svg?rev=3576148","icon":"https:\/\/ps.w.org\/readministrator-read-only-administrator\/assets\/icon.svg?rev=3576148","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Readministrator adds a \"Read Only Administrator\" role. Assign it to a user and they can browse the entire wp-admin like an administrator \u2014 Settings, Users, Plugins, Themes, content, comments and more \u2014 but they cannot change anything. Every write is blocked at the capability layer.<\/p>\n\n<p>What read-only administrators <strong>can<\/strong> do:<\/p>\n\n<ul>\n<li>View every admin screen an administrator can see.<\/li>\n<li>Browse Settings, Tools, Users, Plugins, Themes and content lists.<\/li>\n<li>Run a read-only export.<\/li>\n<\/ul>\n\n<p>What they <strong>cannot<\/strong> do:<\/p>\n\n<ul>\n<li>Save any Settings page (core or plugin Settings API).<\/li>\n<li>Create, edit, publish, trash or delete posts, pages or media.<\/li>\n<li>Add, edit, delete or promote users (including editing their own profile).<\/li>\n<li>Activate, deactivate, install, update, delete or edit plugins.<\/li>\n<li>Switch, install, update, delete or edit themes.<\/li>\n<li>Edit menus, widgets or the Customizer.<\/li>\n<li>Moderate or edit comments.<\/li>\n<li>Make changes through the REST API (the block editor included).<\/li>\n<\/ul>\n\n<h4>Known limitations<\/h4>\n\n<p>Enforcement covers core write paths plus the REST API. A small residual surface remains: some third-party plugins that perform writes through their own custom <code>admin-ajax<\/code>\/<code>admin-post<\/code> handlers, and Network Admin (multisite) screens, are not yet covered. These are on the roadmap.<\/p>\n\n<!--section=installation-->\n<h4>From your WordPress dashboard<\/h4>\n\n<ol>\n<li>Visit 'Plugins &gt; Add New'<\/li>\n<li>Search for <code>Readministrator (Read Only Administrator)<\/code><\/li>\n<li>Activate <code>Readministrator (Read Only Administrator)<\/code> from your Plugins page.<\/li>\n<\/ol>\n\n<h4>From WordPress.org<\/h4>\n\n<ol>\n<li>Download Readministrator (Read Only Administrator).<\/li>\n<li>Upload the 'readministrator-read-only-administrator' directory to your '\/wp-content\/plugins\/' directory, using your favorite method (ftp, sftp, scp, etc...)<\/li>\n<li>Activate Readministrator (Read Only Administrator) from your Plugins page.<\/li>\n<\/ol>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>[Fix] Fixed a fatal error (\"Call to undefined function is_user_logged_in()\") that could lock you out of wp-admin. The option-save guard could run before WordPress loaded its pluggable functions \u2014 for example when another plugin saved an option early during load. The check now bails safely until those functions are available.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>[Feature] Read Only Administrators are now genuinely read-only across the whole admin, not just nine core settings pages. Writes are blocked at the capability layer (<code>user_has_cap<\/code> \/ <code>map_meta_cap<\/code>), with additional guards for option saves, the REST API, and classic write actions (plugins, themes, menus, widgets, comments).<\/li>\n<li>[Improvement] The role now stores only a safe Editor baseline; the elevated \"view everything\" capabilities are granted at runtime, so deactivating the plugin downgrades the role to a plain Editor instead of leaving stranded permissions.<\/li>\n<li>[Improvement] Role capabilities re-sync automatically on update (no reactivation needed).<\/li>\n<li>[Improvement] A persistent read-only notice now appears on every admin screen.<\/li>\n<\/ul>\n\n<h4>0.0.2<\/h4>\n\n<ul>\n<li>[Fix] The <code>readministrator<\/code> role is now removed on uninstall instead of on deactivation, so temporarily deactivating the plugin no longer destroys the role or strips assigned users.<\/li>\n<li>[Fix] Plugin stylesheet now loads only in the admin and only for Read Only Administrator users (previously enqueued on every front-end and admin request).<\/li>\n<\/ul>\n\n<h4>0.0.1<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"A read-only administrator role \u2014 users can view the entire wp-admin like an admin but cannot change anything.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/88654","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=88654"}],"author":[{"embeddable":true,"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/dhanendran"}],"wp:attachment":[{"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=88654"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=88654"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=88654"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=88654"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=88654"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/kaa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=88654"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}