Description
Admin Options Pages is a beautifully designed WordPress plugin, which makes it incredibly easy to create options menus, pages and fields.
Whether you are a seasoned developer or just getting started, Admin Options Pages makes it easy for everybody.
Build your own settings pages in an editor that feels like WordPress itself, without writing a single line of code. Every value is stored as a normal WordPress option, so you can use it anywhere: in your theme with get_option(), in your content with a shortcode, or in a block.
What you can do
- Build menus, pages and fields in an editor that feels familiar from the first click. Drag pages and fields, or move them with the keyboard, and see problems before you save.
- Choose from 21 field types, from a simple text field to dates, a range slider, a button group, images and files.
- Show values on your website without code: bind a block to a field (Block Bindings), or use the shortcode
[aop_option name="phone"]. Only the fields you choose are shown. - Hand it over to your client. The options pages are native WordPress settings pages. Give a page the Editor access level, and your client can change its values without access to the rest of the settings.
- Reuse your setup on the next site. Export the menus you choose, with the values of their fields, and import them on another site. You first see what would happen, and nothing is replaced unless you choose it.
- No lock-in. Your values are normal WordPress options. Deactivate the plugin, and they are still there.
Field types
- Text: Text field, Textarea, Wysiwyg editor, Email, Link, Password
- Numbers: Number, Range
- Choices: Checkbox, Radio buttons, Select, Button group
- Date and time: Date, Time, Date and time
- Media: Color picker, Image, File
- Layout: Title, Description, Horizontal rule
For developers
- Read every value with
get_option( 'your_field_name' ). - Change a value just before it is stored with the filters
aop_sanitized_optionandaop_sanitized_option_<option name>. - Add your own field types with the Field Types API.
Translations
Admin Options Pages is available in English and comes with Dutch, German, French and Spanish translations. The German, French and Spanish translations are machine-translated. Improvements are welcome on translate.wordpress.org.
Documentation
Visit adminoptionspages.com/docs for the documentation.
Bug reports, tips and ideas
Bug reports and ideas are welcome in our issue tracker on GitHub. For “how to” questions, please use the support forum.
Screenshots






Installation
- In your WordPress admin, go to Plugins › Add New Plugin and search for “Admin Options Pages”.
- Click Install Now, then Activate.
- Go to Options Pages › Add new, give your menu a name and add a field with the + button.
- Click Save. Your new menu appears in the admin menu, ready to fill in.
Use the value on your website with a block, the shortcode or get_option(). See the documentation for more.
FAQ
-
Is there any documentation?
-
How can I show an option value on my website?
-
There are three ways. For all of them, the field needs to have Use in shortcode and blocks switched on, except for PHP.
With a block. Add a block, such as a paragraph or a heading, and open the Attributes panel in the block settings. Choose the field: the block now shows its value.
With the shortcode. The editor shows the shortcode of every field, with a copy button. For example:
[aop_option name="my_text_field"]With PHP. Every value is a normal WordPress option:
<?php echo esc_html( get_option( 'my_text_field' ) ); ?>Or with a default value:
<?php echo esc_html( get_option( 'my_text_field', 'my default text' ) ); ?> -
Which fields can be shown on the website?
-
Only fields of Admin Options Pages that have Use in shortcode and blocks switched on. New fields have it on; fields made before 1.0 have it off, so nothing appears on your website until you switch it on. A password field is never shown, and options of WordPress or other plugins never are.
-
Does this plugin make my website slower?
-
No. On the front end of your website, the plugin only does something when a page uses its shortcode or a bound block, and then only for the fields you made public.
-
Is my data safe when I update to 1.0?
-
Yes. Your menus, pages, fields and values are kept. The first time 1.0 runs, it converts the stored pages to a new format. As a safety net, a copy in the old format is kept in the database for 90 days. Exports made with 0.9 can still be imported.
-
Can I go back to an older version?
-
Yes, to 0.9.11, within 90 days after the update. With 1.0 still installed, restore the copy of your pages once with WP-CLI, then install 0.9.11 over 1.0. The documentation describes how. Shortcodes then show as plain text, and bound blocks show their original content.
-
Who can edit the options pages?
-
You choose per page: Administrator or Editor. With Editor, users who can edit other people’s posts can see the page and change its values. The editor of Admin Options Pages itself is only for administrators.
Reviews
Contributors & Developers
“Admin Options Pages” is open source software. The following people have contributed to this plugin.
Contributors“Admin Options Pages” has been translated into 1 locale. Thank you to the translators for their contributions.
Translate “Admin Options Pages” 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
Release Date – 9 October 2026
Admin Options Pages 1.0 is the biggest release so far. It comes after 0.9.11; there was no 0.10.
New:
* Show your values on your website without code. Bind a paragraph, heading, button or image block to a field in the Attributes panel of the block editor (Block Bindings), or use the shortcode [aop_option name="..."]. Only fields with Use in shortcode and blocks switched on are shown; fields made before 1.0 have it off. The editor shows the shortcode of every field, with a copy button.
* Import and export with your values. Export the menus you choose to a JSON file, together with the values of their fields, and import them on the same or another site. Choose a file or drop it on the page: you first see what would happen, with menus, pages, fields and values each on their own, and you decide what is imported. Nothing is replaced unless you choose it, an import is all or nothing, and everything goes through the same checks as saving in the editor. After the import the new menus are there at once. Exports of 0.9 can be imported too.
* Option names that WordPress or other plugins use are never overwritten by an import.
* Nine new field types: Email, Link, Password, Date, Time, Date and time, Range, Button group and File. That makes 21.
* The editor is rewritten with the React that ships with WordPress. It is faster and much smaller (the script is about 80% smaller), and it can be used with the keyboard: every page and field has move up/down buttons next to the drag handle.
* Pages and fields can be dragged by their whole bar, a dashed slot shows where they land, and fields can be dragged to another page.
* Problems are shown at the field, the way the block editor does it, once you leave the field or try to save.
* A “What’s new” page, offered after the update.
* Translations: Dutch, German, French and Spanish come with the plugin. German, French and Spanish are machine-translated.
* For developers: the Field Types API to add your own field types, stable from 1.0 and semantically versioned, with the action aop_register_field_types and the filter aop_field_types. A field type can bring its own icon for the field picker. A field of a type whose plugin is not active is kept as it is, and can be deleted in the editor.
* For developers: the filters aop_sanitized_option and aop_sanitized_option_<option name> change a value after the field type sanitized it, just before it is stored. aop_display_value changes how a value is shown on the website.
Changed:
* The pages are now stored as JSON in the database (with a version), and the table can hold long pages: pages with a lot of fields were cut off at 64 KB before. Your pages are converted the first time you visit the admin. A backup of the old rows is kept for 90 days (filter aop_backup_days) and removed with the plugin. How to go back to 0.9.11 is described in the documentation; shortcodes then show as plain text, and bound blocks show their original content.
* Requires PHP 8.1 or higher and WordPress 6.9 or higher.
* The menu is called “Options Pages” (it was cut off as “Admin Options P.”).
* The editor saves through the WordPress REST API. The settings and import screens use the same React packages as the editor.
* Every setting has one name, the same for every field type.
* On a site that does not allow SVG uploads, the image field explains why .svg can not be chosen.
* The documentation moved to adminoptionspages.com/docs.
Security:
* Exporting, the list of existing menus and the import preview require the manage_options capability and a valid nonce.
* Fixed an SQL injection in the import preview.
* Creating and editing pages checks the capability, and users with a custom role that has manage_options can use the plugin.
Bugfixes:
* Saving a page reset a field whose option was emptied (or set to 0) back to its default value. This no longer happens.
* Descriptions showed raw HTML on the options pages.
* Number fields accept decimals again, and no longer fail when the number of decimals is empty.
* The settings screen saves “Hide Edit page button” again.
* The “saved” message after a redirect is now per user.
* Option names are also checked on the server (lowercase letters, numbers and underscores).
* Radio and select labels are sanitized, and the checkbox and image fields no longer raise PHP warnings.
* The image field also limits the “Upload files” tab of the media window to the allowed image types.
* A plain “&”, “<” or “>” in a Text field or Textarea no longer shows the message “Some of the value on this settings field is not allowed”. The value was saved correctly.
* Opening the editor for a menu that no longer exists shows a message instead of PHP warnings.
* A new field or page no longer takes the cursor away while you are typing in another field.
* PHP deprecation notices from a bundled library on PHP 8.4 are gone.
* The Admin Options Pages start screen can be translated.
* Removing the plugin with WP-CLI works, and removes its data.
0.9.11
Release Date – 25 September 2026
Bugfixes:
* Deleting an options page from the overview list (All Options Pages) works again. Version 0.9.10 only allowed deleting from the edit screen.
0.9.10
Release Date – 25 September 2026
Security:
* Deleting an options page now requires the manage_options capability and a valid nonce. Please update.
Bugfixes:
* New options pages could not be saved and existing ones could not be edited on recent WordPress versions. The form lost its security token because WordPress now sends a Content-Security-Policy header on admin screens.
0.9.9
*Release Date – 30 Januari 2025
Bugfixes:
* Correct use of esc_ functions.
0.9.8
*Release Date – 10 Januari 2025
Bugfixes:
- XSS Fixed on the admin_options_pages_master page (was only possible as Administrator)
- PHP 8 Warnings fixed. See issue on Github.
- Options page is not saving issue fixed. See issue on Github.
- All the translation strings have now the correct ‘text domain’.
- No Capital letters for option names.
Enhancements:
* Minimum PHP version 8.0
* Autload via composer.
0.9.7
Release Date – 5 July 2021
Bugfixes:
- The Menu page title does now support non-ASCII characters. See issue on Github.
0.9.5
Release Date – 5 May 2021
Bugfixes:
- 0 (zero) is saved correctly now (Number field).
0.9.4
Release Date – 13 April 2021
Enhancement/bugfix:
- The wpautop() function is added to the wysiwyg editor.
0.9.3
Release Date – 11 March 2021
Enhancements:
- The wysiwyg editor is added.
- Now PHP 8 ready.
- Small styling tweaks.
Bugfixes:
- Options fields modal is fixed for Safari.
0.9.2
Release Date – 10 September 2020
Bugfixes:
- Error ‘Undefined index: DOCUMENT_URI’ is fixed.
0.9.1
Release Date – 10 August 2020
Admin Options Pages 0.9.1 has one big update. You can give editors now access to options pages.
Enhancements:
- Adds the ability to choose between Administrator or Editor access for each individual page.
- Dashicons are updated. See (New dashicons in WordPress 5.5).
- PHP sessions are not in use anymore.
0.9.0
Release Date – 5 June 2020
Admin Options Pages 0.9.0 is a massive release. The plugin pages are completely redesigned and are more in line with Gutenberg.
Enhancements:
- The pages for creating and Editing options pages are now more in line with Gutenberg.
- A new option field: Select.
- Dashicons are updated. See (Dashicons in WordPress 5.2).
- It is now possible for pages in existing menus to set a custom position. See developer.wordpress.org/reference/functions/add_submenu_page/.
0.7.0
Release Date – 7 November 2019
Enhancements:
- Adds a new “edit page” button on each option page at the right top corner. You can disable this function on the new settings page.
- Adds a “visit page” button on the edit page for quick entering the options pages.
- Adds an “autoload” toggle for each option.
- Textarea’s accepting now more HTML tags when sanitizing. (a, abbr, b, br, em, s, strike, strong, pre)
- Adds some small design changes.
Bugfixes:
- Fixes the error in options.php when in dev mode.
- Fixes a bug when toggle the menutype.
0.0.8
Release Date: 28 March 2019
Bugfixes:
- Fixes the autoload case sensitive issue.
