What Features would you Most Like to See Added to WordPress?

I’m creating a community wiki to ask the following question:

  • What features would you most like to see added to WordPress?

This Question Implies a Few Things:

  • It should surface the features enthusiasts want most, not just drive bys from people who can’t be bothered to know that the “P” needs to be capitalized (inside joke. Of course…)

    Read More
  • Favor features that benefit the more advanced users and especially the theme and/or plugin developers.

  • Also favor APIs and other enablers vs. just yet another new UI widget. Examples of this might be a Backup API that many developers could build on top of, or a Twitter API that themers could build on.

  • Focus on only the few things you really want most, not everything you can think of. Don’t let this be a dumping ground for everything you can think of or have ever thought of. When adding a wanted feature ask yourself if you’d prefer to have it or your top 3 features; if not maybe you shouldn’t add it.

  • Give some great details including, if appropriate:

    A. Wireframes (maybe using Balsamiq?),

    B. API Interfaces

    C. Suggested Hooks

    D. URL Structures

    E. And more.

    F. Even Source code

  • Significant Features Only, please. Don’t add something like “I want the admin console to be purple” or “I really want the admin menu to be on the right.”

  • Avoid things that only Automattic can control like things on WordPress.com!! (not that enthusiasts would care, but…) Better to stick with the things that contributors to an open-source project can affect like code and collaboration.

Rules of This Wiki

  • Do not duplicate suggestions. It’s okay if you do but a moderator may down-vote it and/or delete if possible. In the case a significant duplicate exists but with some good additions we should edit the answer that’s duplicating it to include the additions.

  • More rules will come as needed, as we realize they are needed.

If you have concerns about this related to WordPress Ideas, Core Team buy-in or relationship with WordPress/Automattic, please see the comments in one of my own “answers” posted to this question, below. My hope is that this effort will be entirely positive and that everyone including Automattic and the WordPress core team will get huge value from its outcome.

Related posts

Leave a Reply

14 comments

  1. A Custom Fields UI

    I think really custom fields with custom UI is really a big requirements for a lot of people. I mean, compulsory, repeating, grouped, multiple images, etc.

    There is a bunch of plugins trying to provide the functionality, but they are all add-ons and have to play catch up to new WP features every time. Magic Fields seems reasonably good as a start point.

    And they would make perfect addition to the new Custom Posts.

  2. Post / Page Relationships

    The ability to relate one post to another is definitely functionality I find myself needing quite a lot on more advanced client websites using WordPress. The ability to relate a post to another post or page is something that should be in the core.

    I know Mike has had some involvement on the WordPress trac in relation to pushing for something like this in the core, but nothing has been added yet.

    Example;

    I have a custom post type called artists. I also have a custom post type called albums, reviews and tours. Now the artists custom post type has; a bio, links to social media websites like Last.fm & Facebook and an artist image.

    I want to add a new tour to my tours custom post type, but have it for a specific artist. In this case the artist is Thrice and I want to add a tour Thrice is doing in May, 2011. I add the location, date and then select which post I want to relate it to, in this case it’s Thrice.

    I can then query all tours and get their related artist on the front end. The argument I’ve seen is that you can use custom taxonomies, but that would require having to duplicate content and not be efficient at all, especially considering an artist has an image, links to social media profiles and other artist specific things.

    There is already a plugin that does the aforementioned quite well called Posts To Posts. If something like this were added, it would make my life and the many other people wanting this functionality lives easier.

  3. These are the features currently on my short-list:

    1) Media Management

    I would like to see development/improvement of Media Management given priority status for some near-future release, such that the “Media” post-type assumes analogous feature-parity with e.g. the “Post” and “Page” post-types. Media should have a proper taxonomy system. Media (and Galleries) should be able to be managed on their own (i.e. rather than only being able to be managed through the Post to which they are attached). Media (and Galleries) should be able to be attached, unattached, and reattached to Posts or Pages much more easily.

    Basically, much of the functionality of a Plugin such as NextGen Gallery should be incorporated into core (in whatever appropriate manner).

    2) Widgets UI

    I think, of all the admin interfaces, the Appearance -> Widgets UI is the one most in need of improvement. It is great for a limited number of Widgets, and an even-more-limited number of Widgetized Sidebars; but the UX rapidly degrades with too many Widgets and (especially) with too many Sidebars.

    I’m not a UX expert/designer, but if I were to propose something, I would prefer to see a single-column Widget listing (preferably with self-contained scrolling), and the majority of the screen real-estate devoted to the Sidebars. Further, I would like for the previous state of expanded/collapsed Sidebars to be retained, rather than the lowest-ID sidebar always being expanded on pageload.

    3) Theme install/uninstall/activate/deactivate hooks

    These hooks will bring Theme functionality and standardization more in line with Plugins. I’ve actually volunteered to attempt to provide patches for these for 3.2, so wish me luck!

    4) A development roadmap

    I would like to see the core development team lay out a development roadmap that covers at least 3-5 major revisions into the future. Such a roadmap would give the user community the opportunity to weigh in on the anticipated feature additions/changes, and would help focus developer community input/contribution for each release.

  4. Fully Supported Admin Themes

    WordPress admin themes are currently only partially supported. Although it is possible to change the look of the admin by changing the CSS files, it is not possible to change the HTML without changing the core source code of WordPress. This is the reason why there isn’t a lot of WordPress admin themes out there right now and the ones that do exist rely only in applying a different CSS.

    In order to apply a ThemeForest skin for example a developer would need to perform changes on the HTML, otherwise he could not apply all the provided CSS.

    Currently I think the best admin theme out there is this one but I think you would agree much better can be done: Fluency Admin.

  5. So these are my comments regarding potential concerns related to WordPress Ideas, Core Team buy-in or relationship with WordPress/Automattic.

    What About WordPress Ideas?

    But wait, isn’t there already something like this? Isn’t it called WordPress Ideas? Well true, except:

    • WordPress Ideas has ideas from every level of user so the enthusiasts’ concerns are lost in the chaos.

    • WordPress Ideas doesn’t allow for community moderation like StackExchange.

    • WordPress Ideas doesn’t encourage good formatting and doesn’t allow for editing so when crap is posted it has to remain crap.

    • WordPress Ideas has been unilaterally pruned of top rated ideas in the recent past with no input from and no warning to the community. StackExchange has an audit system we simply can’t bypass and StackExchange won’t have any incentive to eliminate key contributions

    • WordPress Ideas only uses a five star rating system that does not positively or negatively affect a user’s reputation. StackExchange offers up/down voting that does affect a user’s reputation and the latter seems to do a better job at ensuring quality and useful participation.

    • WordPress Ideas requires you to drill down to see the ideas and doesn’t provide a holistic view. Using StackExchange we can have all of the features listed on the same page(s) and be able to scan both the details without so much work.

    • WordPress Ideas is controlled by Automattic. That’s not criticism of Automattic, it’s simply a recognition that all entities look out for their own interests, period. But having something that isn’t overseen by the vested interests of Automattic could have some real value. (Jump to the bottom for clarification.)

    • Frankly whenever I have posted an idea on WordPress Ideas I have simply felt like my idea fell into a black hole, never to be heard from again. I want to really interact with these feature ideas and hopefully see some tangible progress come of them.

    • Lastly I unfortunately have found the core team and frequent contributors on trac and wp-hackers to be less than open to considering feature requests for use-cases they are not familiar with, at least from me. So I personally want this to be a place I can post feature ideas for the things I think are most important and be able to discuss them without being belittled by someone who won’t take the effort to understand the validity of my use-cases. Further if the discussed ideas are sound then I’d like to get validation from others that I respect and whom it appears are developing respect for me on the feature ideas themselves.

    What about Core Team buy-in?

    But wait, don’t we have to get the core WordPress team’s buy-in to discuss this? Well, actually no.

    • This doesn’t have to be only about features added to core, it could also be about any features that could potentially be developed as plugins, or (practically) anything else that affects WordPress (except those things only Automattic can control, as previously stated.)

    • The discussions could precipitate collaboration among users here who are getting to know each other and building respect for each other.

    • While the code developed as a result of the features listed here may never make it to core per se, these features may be the type that make it to core plugin status.

    • By separating out the entry-level end-user wants from the enthusiast/designer/developer needs we might be able to offer the core team more clarity and help them to understand what the enthusiast/designer/developer community thinks is needed in addition to the broader end-user community in WordPress.

    • And finally, if we have a large number of named users with high reputation here agreeing on the need for a given feature, especially if we have already implemented it, I think there’s a greater likelihood the core team will pay attention than if it is proposed by a single individual in a frustrated manner (which I’ll admit I have done once or twice in the past. 🙂 IOW, I think this mechanism could really help us all.

    This Effort vs. WordPress/Automattic?

    To be clear, I posted this NOT I repeat NOT to be antagonistic toward Automattic or the WordPress core team. Instead I simply wanted to use the incredible mechanism that StackExchange provides us to surface the most wanted features, to allow us to discuss and maybe collaborate and to find the most useful features.

    Again, my hope is that this effort will be entirely positive and that everyone including Automattic and the WordPress core team will get huge value from of its outcome.

    And, I hope this helps.

    -Mike

  6. Custom Post Statues.

    The ability to define new post / page / post type status’s rather than just draft and published. I do believe this is underway though! I’d like to use this to create a new type, called block. Then create content blocks that are related to pages, but not published in feeds, or publicly accesible directly.

    Defining Thumbnail Crop Position

    Unfortunately the thumbnail generation is always centered in the image, but sometimes I have a requirement to crop from top left for example.

    Being able to define the crop coordinates would be wonderful. Currently these changes are only possible by editing the core media file, as the thumbnail function uses no filters.

  7. How about building the needed wordpress media UI for the new gsoc stream wrapper API project for rtmp/rtmpe servers.

    http://wiki.github.com/jmstacey/wp-stream-wrappers/

    My problem is that I keep all my video content on separate flash communication server clusters as I do a lot of live video broadcasting. One thing that drives me and my customers nuts about wordpress is having to leave the wp editor to go and get the embed code for a video from my other servers video management software platform.

    To make it even worse, I use the highwinds and akamai cdn as well, leaving me video files in 3 locations.

    Being able to access all my media from any server, cdn, directly within the wordpress editor would be a dream come true. For me at least it would be my #1 priority this year.

  8. Repository Configuration

    The more and more I use Linux Derivates, the more I wonder why things are that tightly coupled to the webmasters of wordpress.org. The Repository for example. There only is one. What would be cooler for supporters and admins to configure their own Repository? So to offer Add-Ons like Themes and Plugins they take care of for their users incl. providing updates etc. .

    For example with Themes, once made for a customer, she/he is interested in that theme – and not any other other theme. So asking for updates, an own repository would make the workflow with the customer much easier, like doing the updates on a dev system and then, when it’s working, publishing the latest version via the repository.

    But right now, the WordPress Repository configuration and with it the update functionality is totally limited to either wordpress.org or to those who hack in a comparable system which is not very clever, because most part of the repository feature is already implemented and there is no need for everybody to do stuff that might break other things.

    A main problem is that it’s just locked down on wordpress.org. I strongly dislike vendor lock-in in software, especially not with Free Software. That’s making the known benefits of free software become more and more obsolete.

    Related Ticket: #13067 – Configuration of Plugin and Theme Repository/ies

    It looks like that core developers are against this – obviously for various reasons. But in the end this just results in not offering a functionality to all users that is offered to wordpress.org. This in no way weights against the benefits for professional wordpress supporters and admins as well as sysadmins in local networks. So why to limit something that could be unlimited by default?

    If wordpress core is not considering to integrate this, I think it should be possible to provide this by a collectively owned plugin so that the existing functionality becomes usable by everybody while remaining compatible to each other.

  9. There are some essential tools used on a daily basis that I think would really help WordPress developers out. These are so essential on most sites I believe they do not belong as plugins.

    Form API – Every site/framework/CMS has form handling of one kind or another, WordPress has none.

    Media API – A robust media API especially for management and user control has well..been on the roadmap for to long.

    Custom Field API – Something along the lines of WPAlchemy (meta box class) should be built into the core at a basic level.

    Admin API – Controlling admin elements ( menus, extras, fields, etc) can be a real pain for user roles.

  10. Galleries

    1. Currently you don’t get the “Gallery” tab if you haven’t uploaded a minimum of 2 images to a post. So it’s impossible to use the media library files to build a new gallery. For some (unknown) reason there’s support for adding the same images (or other files) to multiple Posts, but you can’t build galleries from posts that already exist.

    2. Bypass/Filter only the gallery markup. Currently you have to completely override the gallery function just to add for. eg. a css class to every image. We would just need a single filter to save us from repeating the (pretty long) core code over and over again.

  11. Advanced Front end options

    I personally feel that wordpress dashboard should be separated in to two parts and those regarding CONTENT ( posts, terms, links, comments etc ) should be their in front end, I can sense a better usability when iam using TUMBLR ( for posting content ) than in wordpress. The percentage of users using wordpress for posting content is higher than developers like us, for them their is no need to show the admin panel.

    wp-admin should only be for configuring( i.e themes, plugins, settings etc).

    Built in CSV importer

    Built in CSV importer would be handy when uploading large quantity of content through CSV. I feel the current importer option in wordpress is only used by a few, many have their content in xls format, we have plugin for that but would be better if its inbuit.

    Directory instead of links

    The links option is the least used option in wordpress, it would be good if wordpress changes that to a directory options( with map, address recognizer ), because their is no exact recognized package available for directory in opensource, but their is an increasing demand for it. I think if directory is added then wordpress would be killer platform.

  12. Built in rating option

    It would be good if we have a good rating system (like the one in wordpress.org) for rating posts.

    Advanced gallery option

    The current gallery option includes images only from upload, it would be good if their is an option to add external images as post attachments, as this would include them in gallery.

    Ajax wordpress Registration

    Built in Ajax registration could save time and avoid confusion for users. this can be done through bp-xtra signup plugin but i think its overkill, having a built in option would be good.