ADFO – Build data entry forms in admin dashboard


This plugin is designed for those who develop sites and need to extend wordpress functionality through new data structures.

Admin Form allows you to create data collections by connecting directly to your wordpress database.

You can use this plugin to create new data structures or to manage or filter tables already in the database.
For example, you can make it easier to write new plugins by automating the entire data entry administration section.
You can use shortcodes to quickly display html tables on your site, with search results, column sorting and page breakdown.
Or you can draw the html yourself and enter data using special shortcodes.
Inside the plugin there is in fact a template engine complete with modified variables such as uppercase, substring etc… and all the most common commands of programming languages (loop, if-else etc… ).
Extensive documentation will help you create what you want.
For example, the tutorials will teach you to create an image gallery or a table showing other articles with the same tags as the article you are viewing.


Create data tables for backend use.
– Create form with more than 20 data types
– Use an advanced excel-style search system
– Choose the fields to display, the order and how to display them.
– Delete selected data or choose to delete all filtered data [PRO]
– Download selected data or all filtered data [PRO]
– Choose the roles of who can edit the table.
– Multisite support.
– Show data from other tables through LOOKUP [PRO]
– Create and edit complex data structures from mysql queries [PRO]


Publish data in tables.
– Choose the color, the type of pagination, whether to show the search or the ability to sort the fields.
– Show the detail of single records in popup.
– Customize the view through a custom template engine.


You have at your disposal a powerful template engine similar to wordpress shortcodes.
You can customize the data display through attributes. For example to make text uppercase:

[%item.Title uppercase]

You can control data flows through the most used operators (if, for, break, while, math…)
For example, to check if a user is logged in you can write:

[^IF [^user]==""] you are not logged in
[^else]  You are logged in [^endif]

Or pull the data directly into a post via the [adfo_tmpl] shortcode

    [^FOR EACH=[^POST TYPE=post]]


Obviously you have a set of hooks and filters available for working in php, but you also have a class available with a set of functions to manage data from the code. You will find all the documentation inside the plugin.


For post, user, comment tables and all tables that have a linked “meta” table, Admin Form allows you to add custom fields to the table you are editing.


There is also a PRO version that you can download for free!

The pro version adds:
The calculated fields.
– The lookups fields
– A system for managing tables through mysql queries
– The ability to create query forms (LAB).
– Advanced management in the creation of tables
Import and export of data in mysql / csv.

the link to the project:



Download the plugin and activate it.


No hay reseñas para este plugin.

Colaboradores y desarrolladores

“ADFO – Build data entry forms in admin dashboard” es un software de código abierto. Las siguientes personas han colaborado con este plugin.


Registro de cambios

1.6.0 FIXBUG 22-01-2023

  • NEW: Added Time field and template engine attributes: timenum-to-timestr, timestr-to-timenum and time-to-hour
  • NEW (PRO) in the datapress main page added a box that shows the running queries and allows you to remove them
  • FIXBUG (PRO) show table in import data list
  • IMPROVEMENT: Limited metadata function. Metadata must be unique. There can be only one metadata for each meta_key. During the save if I find more metadata for the same key I delete them.
  • IMPROVEMENT: (TAB FORM) the test of the calculated fields does not work with data which however works in production. Added an information box if using [%data.
  • IMPROVEMENT: (TAB FORM) option in select: if there are no values I set them equal to the labels
  • IMPROVEMENT: Changed the default setting of the frontend of the tables.
  • IMPROVEMENT: Rebuild of post and user fields on lists. They now display the post title or the user’s nicename. Search now works on user title or name instead of IDs. However, it is not possible to sort the list by a post or user field. This will not be developed because if you change the data type of the list the query will give an error.
  • IMPROVEMENT: (LIST view formatting) On post and user type columns I no longer choose which information to show, it’s always the title or username, but I’ve added the option to automatically create the link to the article or author’s page. Attention this change generates a small incompatibility with previous versions. If you are using the post or user field check out the new functionality. If you wanted to link to other fields, use the lookup field instead.
  • FIXBUG Added checking on date fields when they are invalid.
  • FIXBUG: (page action=list-sql-edit) When I save it hides the primary keys in the lists.
  • FIXBUG: on import for user post and lookup fields
  • FIXBUG: FRONTEND when you press enter and you have the focus on the search even if it is in ajax it sends the data in get
  • FIXBUG: (TAB FORM) When you created a new field it didn’t allow dragging it to sort.
  • FIXBUG: In frontend tables, filters with values populated by particular shortcodes (like [^] ) were forgotten in ajax calls for paging, or searching.

1.5.0 metadati 08-01-2023

  • NEW Inside the template engine, when a variable is extracted from the data of a list, the VAL attribute has been added.
    the extracted variables return the processed values. If this attribute is used, the variable returns the original value saved in the database.
  • NEW: In the page where the form is configured, the possibility of sorting the order in which to show multiple tables has been added
  • NEW: Special handling for metadata has been developed. In the setting screen it is possible to select the metadata table linked to the main table. If this is selected in the form configuration page, an Add metadata button will appear with which it will be possible to add new custom fields.
  • IMPROVEMENT on the autocomplete popup added the handling of the ESC key.
  • FIXBUG: inherited the single checkbox was not passing the value
  • FIXBUG: on lists with multiple tables the system that inherits the configuration on the list doesn’t seem to work.
  • FIXBUG: PAGE BUGS FORM change styles doesn’t work correctly
  • FIXBUG: The query aliases of a new FORM must always be quoted

=1.4.0 2022-12-15 – Clone list =
* NEW: (list-all) Clone list: it is now possible to clone a list.
* NEW: (Browse-list) The ability to clone a record has been added to lists.
* NEW: Added function ADFO::get_clone_detail(); Returns the data to clone a record
* NEW: (PRO list all tables) Add Clone table action
* NEW: (PRO) Now it is also possible to update the PRO version directly from the plugins page
* IMPROVEMENT: (list view formatting) Add checkbox Keeps settings aligned with information from the same field in tab ‘Form’.
* FIXBUG: notice in list_browse (wpdb->prepare)
* FIXBUG: (dropdown filter) checboxes with comma
* FIXBUG: remove sanitize in get_request
* FIXBUG: (admin-list) Remove pagination html after bulk actions.
* FIXBUG: (dropdown filter) Results were not corrected when filtering by operators: ‘> < >= <=’
* FIXBUG: The lookup filters with the column filters didn’t work together. With search the drop down menu was not working properly
* FIXBUG: Did not show title and description of table attributes when managed table is only one.

1.3.0 2022-12-07 – pro version – import/export

  • NEW: [Only for PRO]: A system for importing data from a form. Now you can export, edit and re-import your data. Before importing the data, these are verified using a check system.
  • IMPROVEMENT [Only for PRO]: Added ‘show all text’ checkbox in broswer data
  • IMPROVEMENT (Code) ADFO:get_detail added raw_data:boolean parameter
  • IMPROVEMENT (Code) ADFO:get_data added the raw type return that is used to save the query
  • IMPROVEMENT (Code) ADFO:save_data if all fields are null or empty, but id is there i added delete row action.
  • FIXBUG: The plugin miscounted the total number of records when the group by was present
  • FIXBUG: On import it does not recalculate CALCULATED FIELD type fields

1.2.0 2022-11-23 – new fields

  • NEW: new fields: color picker and range
  • IMPROVEMENT: new hooks to add new functionality when creating a new form.
  • FIXBUG: saving text remove html.
  • FIXBUG: (database_press) button create list from query, the list it creates doesn’t work!
  • FIXBUG [PRO] (list-browse) csv download didn’t work.
  • REFACTOR: renamed the other hooks and created the legacy for the old hooks
  • IMPROVEMENT: Possibility to use the database in the Pro version even if the admin form is not installed
  • DOCS: list_view_formatting.

1.1.0 2022-11-17

  • FIXBUG: (list-form) When I create a new field the autoincrement doesn’t appear
  • NEW: (list-form) new field: field email, link
  • NEW: (list-form) when you create a field it also creates a default in the list view. In lookups it doesn’t create the additional field and it doesn’t hide the main one
  • FIX MAJOR BUG: (list-structure) If I save a lookup without primary the query gives an error.
  • IMPROVEMENT: Documentation of field types
  • FIXBUG: the namespaces referring to object verification were wrong. Discovered on calculated field
  • FIXBUG: (list-form) When I create a new field the special fields of the pro version don’t appear
  • FIXBUG: (browse-list) the change values ​​set in the list structure are not displayed when updating a record!
  • FIXBUG: if I remove a field in the list-form it doesn’t remove the field(s) of list-view-formatting!
  • FIXBUG: on list-structure custom column has label column type instead of custom code
  • IMPROVEMENT: in the column type list view (Show checkbox values) I divided the various results with a graphic element.

1.0.1 2022-11-12

  • FIXBUG: list description.
  • FIXBUG: show php error.