Skip to content

DrewAPicture/wordpress-fields-api

 
 

Repository files navigation

WordPress Fields API

Travis Scrutinizer Code Quality codecov.io License

This is a core proposal for a new wide-reaching API for WordPress core. It is currently an evolving prototype that can be installed as a plugin for easy testing and usage throughout development.

This was initially a project of the WordPress core Options/Metadata team but is currently led by Scott Kingsley Clark with oversight by WordPress core lead developer Helen Hou-Sandí.

Please note: This plugin is still in the early stages of development and should not be used on production sites. It should be assumed that until the v1.0 release, the Fields API could change significantly due to core scrutiny and the final merge proposal response.

Requirements

  • WordPress 4.3.x - No previous or more recent major version can be 100% supported and confirmed as working.
  • Fields API installed as a plugin

Every Fields API release has to be based off of the latest WordPress stable release. This means that over time, we can only support the last stable release of WordPress.

At the end of each WP release cycle we have to merge all of the Customizer and other implementations we have with the latest changes from core.

Why a Fields API?

There are over a hundred (I stopped counting, sue me) plugins in the plugin repository that add meta boxes and fields to post types, settings, users, and even more if you include all of the themes and plugins that hook into the customizer. Many plugins build their own abstraction level for doing this, and custom field plugins are the biggest culprit of not following any standards for which to there is a significant need to unite these APIs to make them more consistent. At the same time, being able to provide a detailed structure for a site will take the capabilities of apps that extend WordPress (or interact with it) to the next level.

Each of the APIs that this aims to unite all have the same essential needs. Based on the Customizer, we can enable developers to do more because they won't have to jump between different interfaces.

What about Fields UI?

I am not focusing on any UI aspects at the moment besides implementation of the API underneath getting the field data for UI to use in core itself. It will be easier to tackle the API and the UI separately for both the purpose of development and core inclusion.

Unknowns / To dos

There are still a lot of areas the API is not represented in code or in examples.

Check out a full list of things we currently need help with

Contributing

If you are interested in contributing, feel free to contact us in #core-fields on WordPress Slack and we'll help you get into the mix.

There are also GitHub issues you can feel free to chime in on or provide Pull Requests to.

Pull Requests

To submit a pull request, please base it off of the master branch.

LICENSE

GPLv2 or later. See License.

About

Fields API proposal for WordPress Core (still in progress)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 99.1%
  • Other 0.9%