Plugin Directory

Admin Page Framework

Facilitates WordPress plugin and theme development.

3.8.0 - 2016/07/26

  • Added the placement field argument that allows the user to place field in the areas of section title and field title.
  • Added the inline_mixed built-in field type which introduces the ability to create inline mixed fields with the content field definition argument.
  • Added the ability to nest fields with the content field definition argument.
  • Added a new factory class, AdminPageFramework_TermMeta, to build forms for taxonomy terms.
  • Changed the type argument in the field definition to be able to be omitted.
  • Changed the default value of the label_min_width field argument to 0 from 140 and its min-width CSS property value set to elements are handled with embedded CSS.
  • Changed the behaviour of collapsible section bars that expanded/collapsed when a field in the bar was clicked.
  • Fixed a bug that setting an argument array to the script and style argument of a menu page definition did not take effect.
  • Fixed a bug with the rich text editor that set text was erased when the field is sortable and the sorted the field.
  • Fixed a bug that the tool bar of repeatable rich text area fields did not get updated when the field or section was repeatable.
  • Fixed a bug that delimiter elements were not displayed when a last repeatable field is duplicated.

3.7.15 - 2016/05/31

  • Fixed a bug that caused a warning saying accessing an undefined object property in the network admin area.

3.7.14 - 2016/04/20

  • Fixed a compatibility issue with WordPress 4.5 that taxonomy form fields were not displayed in the term editing page.

3.7.13 - 2016/03/04

  • Fixed a PHP notice, Array to string conversion in ...AdminPageFramework_FieldType_media.php caused when setting an array to the repeatable field definition argument of the image and media field type.

3.7.12 - 2016/02/20

  • Added the ability to set custom classes for sub-objects.
  • Added an example for page meta boxes for in-page tabs in the demo.
  • Added the load() method to the admin page factory class which gets called when one of the added admin pages starts loading.
  • Fixed a bug that zip files generated with Generator could not be opened on Windows.
  • Fixed a bug that the size field type could not save and retrieve values in a sub-field, introduced in v3.7.0.
  • Tweaked the style of page meta boxes.

3.7.11 - 2016/01/15

  • Fixed a bug that the default plugin action link were doubled when setting a custom label.
  • Changed the error level of custom errors for using deprecated items.

3.7.10 - 2016/01/13

  • Added the load() method to the post type factory class which gets called when the edit.php page of the post type starts loading.
  • Optimized performance in the common admin area.
  • Changed the timing of registering page meta boxes so that their classes can be instantiated in the load_{...} hook of the admin page factory class.
  • Changed the framework inline CSS rules in the compiled library files to be minified.

3.7.9 - 2016/01/07

  • Reduced the number of library files.
  • Fixed a bug that site-wide field type definitions were overridden by built-in field types of per-class field type definitions which caused some field types which override the built-in field type slug did not load, introduced in v3.7.1.
  • Fixed an issue with widgets that caused some overhead.
  • Fixed an issue that widget resources were loaded in pages that do not have widget forms.
  • Tweaked the style of collapsible form sections.
  • Changed the color of setting notices for resetting options with the submit field type from red to green.
  • Changed the demo to be disabled when the loader plugin admin pages are disabled.

3.7.8 - 2015/12/31

  • Reduced the number of database queries used in framework forms.

3.7.7 - 2015/12/30

  • Fixed an issue that the framework forms could not be displayed when some third-party plugins or themes have JavaScript errors.
  • Fixed a bug in a field object calling an undefined method. - 2015/12/23

  • Fixed a bug that debug log was generated, introduced in v3.7.6.
  • Fixed a bug that Generator could not generate some files, introduced in v3.7.6.

3.7.6 - 2015/12/23

  • Added the skip_confirmation argument for the submit field type, which skips submit confirmation.
  • Fixed some compatibility issues with PHP 7.
  • Fixed an issue that fron-end pages of custom post types registered with the framework could not be accessible in some occasions.
  • Fixed a bug that resetting options did not show a message since v3.5.3.
  • Fixed a bug that page titles got doubled in the title tag when there is a hidden page.
  • Changed the timing of resetting options and sending contact form emails of the submit field type to after the validation hooks so that the user can cancel their actions.

3.7.5 - 2015/12/18

  • Reduced the number of database queries used in framework widget forms.

3.7.4 - 2015/12/16

  • Added the submenu_order_addnew and submenu_order_manage arguments for the post type arguments.
  • Added the submenu_order argument for the taxonomy arguments.
  • Fixed a bug that setting notices could not be displayed in the network admin area, introduced in 3.7.0.
  • Fixed a bug in the demo of network admin pages that called non existent class, introduced in 3.7.0.
  • Fixed a bug in the network admin factory class that called an undefined method, , introduced in 3.7.0.
  • Changed the default capability value of the user meta factory class to read to allow subscribers to edit options of their profiles.
  • Changed the incremental offset automatically assigned to the order argument of sub-menu items.
  • Changed the order argument of sub-menu items to be effective site-wide.

3.7.3 - 2015/12/13

  • Added the action_links_{post type slug} filter to the post type factory class.
  • Fixed an issue of a fatal error Maximum function nesting level of 'x' reached when the server enables the XDebug extension and sets a low value for the xdebug.max_nesting_level option.

3.7.2 - 2015/12/11

  • Fixed a compatibility issue with WordPress 4.4 that widget fields with a section could no longer save and retrieve the values.
  • Fixed a bug that the framework library files and user-generated library files were missing file doc-blocks.
  • Fixed an issue that custom field type specific text domain could not be converted with the Generator tool.
  • Changed the form sections and fields registration mechanism of the admin page class to accept items without the page_slug and tab_slug by letting them being added to the current page or tab which is registed by the classs.

3.7.1 - 2015/12/08

  • Added the internal ability for the select and radio field types to accept nested attributes arguments for each label element.
  • Fixed a bug that site-wide field type definitions were loaded multiple times per page load, introduced in 3.7.0.
  • Tweaked the style of form sections and fields.
  • Tweaked the style of help tool tips.

3.7.0 - 2015/12/04

  • Added the setMessage() and getMessage() methods to retrieve and modify the framework system messages.
  • Added the 'type' argument for the collapsible argument for section definitions which supports button to make sections collapsible with a button.
  • Added the ability to display tool tips that appear when the user moves the cursor over the ? icon beside the section and field title.
  • Added the tip argument for section definitions.
  • Added a utility class to create pointer tool box in the admin area.
  • Added the ability of nesting sections.
  • Tweaked the way that forms appear.
  • Tweaked the way that admin notices appear.
  • Fixed a bug that the collapsed of collapsible section definition argument did not take effect for widget forms when the widget was initially dropped.
  • Changed the factory class name of the page meta box from AdminPageFramework_MetaBox_Page to AdminPageFramework_PageMetaBox.

3.6.6 - 2015/11/26

  • Changed back the change introduced in v3.6.4 not to convert backslashes to underscores in class names in the framework hooks but only apply to auto-callback method names.

3.6.5 - 2015/11/21

  • Fixed a bug that layouts of page meta boxes were not displayed properly when no side meta box existed and one of normal or advanced was added.
  • Fixed the style of section tabs in WordPress 4.4.

3.6.4 - 20105/11/19

  • Added the APFL_SILENT_MODE constant to the loader plugin that toggle the visuals of the loader admin pages.
  • Tweaked the style of textarea fields.
  • Fixed an issue that a column data were not updated right away when the user uses Quick Edit in a post listing table of a post type.
  • Changed the class names in the framework hook names to get backslashes converted to underscores to avoid invalid characters in callback method names.

3.6.3 - 2015/11/07

  • Added the script and style arguments for the page and in-page tab definitions.
  • Tweaked the style of section tab titles in meta boxes.
  • Fixed an issue in WordPress 3.7.x or below that the screen icon appeared even when the screen title and the in-page tabs are disabled.
  • Changed the required WordPress version to 3.4.

3.6.2 - 2015/10/31

  • Added a notification box in the admin pages of the loader plugin.
  • Tweaked the style of heading tags in meta boxes.
  • Tweaked the style of buttons of collapsible sections.
  • Fixed a bug that the form values were not saved correctly with a sortable and repeatable section containing repeatable fields.
  • Fixed a bug in the taxonomy fields that conditions set with the if and capability arguments were not applied.

3.6.1 - 2015/10/26

  • Added the ability to activate a form section tab by URL.
  • Added the content argument for section and field definition arrays to define custom outputs.
  • Added a hook to filter parsing contents to the AdminPageFramework_WPReadmeParser utility class.
  • Fixed a bug with form section tabs that the active content elements were not visible when a container element is hidden first on the page load.
  • Fixed a bug caused a fatal error in the AdminPageFramework_AdminNotice class, introduced in 3.5.12.

3.6.0 - 2015/10/22

  • Added the ability for the generator to include custom field types.
  • Added the ability to sort sections with the sortable argument of a section definition array.
  • Added the save argument for the section and field definition.
  • Added the if argument to the in-page tab definition.
  • Fixed an issue of a conflict that forms of post type meta boxes were not displayed when the global $post object is modified by third party scripts.
  • Fixed an issue that the file fields could not trigger the section validation callback when there are no other field types in the section.
  • Fixed a bug that an in-page tab that the parent_tab_slug is set and show_in_page_tab is false was displayed, introduced in 3.5.10.
  • Fixed the setPageHeadingTabTag() method did not property set the tag.
  • Changed the capability values of admin pages, in-page tabs, sections and fields to inherit the value from the outer container element.
  • Changed the directory structure of included files to shorten the overall file paths.
  • Changed the mechanism of the repeating and sorting fields.

3.5.12 - 2015/08/09

  • Fixed a bug that the Select All and Select None buttons were doubled when a checkbox and posttype field types were in the same form and not displayed with the taxonomy field type when there are no checkbox or posttype fields in the same page.
  • Tweaked the class selectors of admin notification elements to have dismiss buttons available in WordPress 4.2 or above.

3.5.11 - 2015/07/14

  • Added a warning to be displayed for forms in generic admin pages when the user form inputs exceeds the PHP max_input_vars value.
  • Added the column layout screen options for page meta boxes.
  • Fixed a bug that screen options were not saved in generic pages added by the framework.

3.5.10 - 2015/07/05

  • Added the show_submenu_add_new post type argument which enables to remove "Add New" sub-menu item from the sidebar menu.
  • Added the attributes and disabled arguments to page and in-page tab definition array which gets applied to navigation tab element.
  • Changed the behavior of the color field type to have the default value getting reflected in repeated field.
  • Fixed an issue that default values could not be set for user meta fields.
  • Fixed an issue that magic quotes were not sanitized in taxonomy field inputs.

3.5.9 - 2015/06/25

  • Added the ability for the size field type to create sub-fields by passing an array of labels.
  • Added the reset_... action hooks.
  • Added the ability to disable setting notices by passing an empty string to the setSettingNotice() method.
  • Added the ability for the admin page factory class to save form options only for a set time of period by passing an integer for the option key to the constructor.
  • Added the ability for transient utility methods to accept long transient key names.
  • Fixed an issue that post meta-box form fields were not able to set default values when there were existing meta data.
  • Fixed a bug in the getOption() utility method that the fourth parameter did not take effect when null is given to the second parameter.
  • Changed the timing of rendering the widget title to after the do_{...} and content_{...} hooks.
  • Changed the zip file name of generated framework files to have a version suffix.

3.5.8 - 2015/05/29

  • Added the ability for the getValue() method to set a default value with the second parameter when the first parameter is an array.
  • Added the ability for the text and textarea field types to create sub-input elements by passing an array to the label argument.
  • Added the width argument for the taxonomy field type.
  • Fixed a bug that the name attribute value was not set in post meta box fields in post-new.php, introduced in 3.5.7.
  • Fixed a bug with the taxonomy field type that could not list terms when the arguments argument misses the class argument. - 2015/05/11

  • Fixed a bug with referencing pressed submit button name attributes, introduced in 3.5.7.

3.5.7 - 2015/05/05

  • Fixed a compatibility issue with WordPress 4.2 or above that the taxonomy field type become not able to list taxonomy terms.
  • Tweaked styling of page meta-box form elements.

3.5.6 - 2015/03/15

  • Fixed a bug that form section values of page meta box could not be displayed.

3.5.5 - 2015/03/08

  • Added the footer_right_{...} and footer_left_{...} filter hooks.
  • Fixed an issue that the loader plugin could not get activated when a plugin that includes the framework of a lesser version that that not have a certain class constant.
  • Changed not to include the development version in the plugin distribution package.
  • Changed the setFooterInfoLeft() and setFooterInfoRight() methods to be deprecated which had not been functional since v3.1.3.

3.5.4 - 2015/03/02

  • Added the framework component generator in the loader plugin which can be accessed via Dashboard -> Admin Page Framework -> Tools -> Generator.
  • Added the export_header_{...} filters that lets the user set custom HTTP header outputs for the export field type.
  • Fixed a bug in the system field type that PHP warnings occurred when the permission to read error logs is not sufficient.
  • Changed the minified version to be deprecated.
  • Changed the version name of the development version to have .dev notation in the version name.

3.5.3 - 2015/02/21

  • Added the ability to reset individual field values with the reset argument of the submit field type.
  • Added a user meta factory class demo example.
  • Added the validate() and content() methods in the admin page factory class.
  • Added the fourth parameter to the validate() method of page meta box factory class to receive submit information.
  • Fixed a bug that invalid field values were stored when submitting the form multiple times using validation callback methods.
  • Fixed an issue in the loader plugin that after resetting the loader plugin options via the Debug tab, a warning 'You do not have sufficient permissions to access this page.' appeared.
  • Fixed an issue in the user meta factory class that a PHP notice, Trying to get property of non-object..., which appeared when creating a new user.
  • Fixed an issue that the image field type did not extend AdminPageFramework_FieldType but AdminPageFramework_FieldType_Base.

3.5.2 - 2015/02/02

  • Fixed a bug in the widget factory class that form sections could not be set.
  • Changed the class argument of the section definition array to accept a string. - 2015/01/24

  • Fixed a bug that caused non-object type PHP error in the post type factory class introduced in v3.5.1.

3.5.1 - 2015/01/23

  • Fixed a bug in the enqueueScripts() method of the admin page factory class.
  • Fixed a bug that message objects were not properly instantiated.
  • Fixed PHP strict standard warnings.

3.5.0 - 2015/01/22

  • Added the forth parameter of submit information to the validation filter callbacks so that callback methods can know which framework field submit button is pressed etc.
  • Added the a method to the field type class that is triggered when a field of the field type is registered.
  • Added the field_types_admin_page_framework filter that allows you to register field types sitewide.
  • Added the url argument for in-page tab definition arrays that allows the user to add link navigation tab.
  • Added a utility class for WordPres Readme parser and the markdown syntax.
  • Added a utility class for plugin bootstraps.
  • Added user meta factory class for adding fields in the user profile page.
  • Fixed the network admin factory class could not add plugin action links via the addLinkToPluginTitle() method.
  • Fixed an issue that empty strings could be inserted with the addLinkToPluginTitle() and addLinkToPluginDescription() method.
  • Fixed a bug that style_{...} and script_{...} filters were triggered twice in generic admin pages.
  • Fixed a bug that style_{page slug}_{tab slug}, style_{page_slug}, script_{page slug}_{tab slug}, and script_{page slug}_{tab slug} were not available.
  • Changed the demo plugin to be a loader plugin that loads Admin Page Framework.
  • Tweaked the styling of admin page container elements.

Old Change Log

Requires: 3.4 or higher
Compatible up to: 4.5.3
Last Updated: 1 day ago
Active Installs: 600+


4.8 out of 5 stars


0 of 1 support threads in the last two months have been marked resolved.

Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.

100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,2,2 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1
100,3,3 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1
100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,2,2 100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1