Problem: Plugin and theme developers have no common naming scheme for post types and metadata, and they are not being properly registered.
Why it matters: If a common set of terms were used, it would allow users to easily migrate between multiple plugins of a given type (from one eCommerce plugin to another, for example), allow multiple plugins to work seamlessly with the same set of data. In addition, by properly naming and registering metadata, it would allow for broader use of the API, as associated and related metadata would be easily accessed, understood and manipulated.
How to solve this: I would envision a solution which would involve the following:
- Consider requests to access/modify non-registered meta to be deprecated, and send up notices when WP_DEBUG is turned on
- When registering a new custom post type, allow a schema to be registered as well, for example:
$args = array( 'public' => true, 'label' => 'Event', 'schema' => 'http://schema.org/Event' ); register_post_type( 'event', $args );
- Allow developers to identify schemas used in the readme.txt