10 Missing Features in WordPress

Jul 1 2010 by Jacob Gube | 104 Comments

10 Missing Features in WordPress

The popular publishing platform, WordPress, recently released its latest major version: WordPress 3.0 (dubbed "Thelonious"). This iteration of WordPress introduces plenty of convenient new features such as drag-and-drop interfaces for building navigation menus (for those not comfortable modifying their theme files), the ability to deploy multiple sites under one installation (by the inclusion of WordPress MU) and a system for making custom content types other than posts and pages.

However, some new features appear to be superfluous. Why have a built-in link shortener (yet not include social media web service integration that benefit from link shortening)? Why release a new default theme every year? Is it really worth the increase in the code base’s bulk to give end-users an interface for designing custom headers?

These not-so-handy new features lead me to ponder: Why not put all of this effort to features that are actually useful to many?

Many, if not all, of the features I’ll suggest here already exist as WordPress plugins or can be found in competing content management systems (such as Drupal).

Many will argue that if a feature already exists as a plugin — why bother? There are definite benefits to incorporating features into WordPress even if they already exist as plugins.

First, it reduces the need for the user to install a third-party plugin, which in turn can improve performance and enhance maintainability, as some plugins are better written than others. One of the biggest causes of broken WordPress sites is plugin incompatibilities; by having these features native and tightly integrated into the system, we can avoid these issues.

Also, by adopting these features, they can be cultivated by the collective contributions of open source developers, which also means that we needn’t worry any longer about a particular plugin not being maintained by its creator.

Upgrading a system will be simpler if you didn’t have these features as plugins. You just have to upgrade your WordPress installation, and these features will subjected to the same testing, review, and scrutiny as other parts of the WordPress core.

With all of that in mind, let’s go over some of what I believe are missing features in WordPress.

1. Web Caching

Every time a visitor views a web page in a WordPress-powered site, the system performs multiple server-side processes and database queries to generate that page for the visitor. This affects the speed in which a web page can be rendered and — for people running the publishing platform on an underpowered web server — can cause major downtimes and slowdowns.

One of the best ways to improve page performance is through web caching files on the web server — storing static versions of each web page so that the system doesn’t have to perform redundant work whenever a page is requested.

There are a number of popular plugins that handle caching for WordPress sites, and other CMSs like Drupal already have it out of the box.

This feature should be an optional feature that WordPress site administrators can enable, with option settings on how long to keep the cached files that they can tweak according to their site’s updating frequency and traffic load.

2. Pagination with Multi-Page Navigation

Pagination with Multi-Page Navigation

The Pagination pattern is a popular navigation interface for web pages that show a list of results that’s too long to show in one page. The solution, then, is to break this set of information down into several pages.

WordPress does have built-in pagination, but it can only navigate one page at a time. For blogs that have been around for a long time or those that post frequently, navigating to older posts requires many clicks if you can only move around one page at a time.

As a solution, you can have a list of links in a row that points to all the pages, with options to jump to the last and first pages. This is relevant for many WordPress content pages, including the front page (index.php), category pages (category.php), as well as posts (post.php) and pages (page.php) that have been split up into more than two pages.

3. Displaying Related Posts

Displaying Related Posts

Findability can be greatly improved if related content is displayed on a post. Right now, theme developers can take advantage of the get_category/get_categories for pulling out the posts’ category and wp_get_post_tags for the post’s tags, however, what’s more difficult is displaying related posts.

There are ways to try and display related posts, such as picking, say, 5 random posts from the same category/categories or posts tagged with the same words. However, the accuracy of how related the queried posts will be to the current post is, a lot of times, poor.

There should be more "signals" to determine the relevancy of one post to another, such as seeing if the title of posts have the same words, how many tags are the same on both posts, and if the current post links to another post.

4. Custom User Role Permissions

Custom User Role Permissions

WordPress is used by huge websites with multiple authors (i.e. TechCrunch, Mashable, and Smashing Magazine all use WordPress, for example). These multi-author sites have the need to control who can do what.

Currently, WordPress has five user roles, and for the most part, they’re fine. But as WordPress gets utilized in more and more distinct ways, there becomes a need to have a system for building custom user roles, or at least the ability to modify the five built-in user roles.

For example, there might be authors that are only permitted to see or post in a particular category, or an administrator that can do everything but install plugins and change discussion settings.

Permission/role management is an essential component to systems with multiple users.

5. Social Media Integration for Popular Web Services

Social Media Integration for Popular Web Services

An essential feature of content-centered sites is the ability for its users to share published content. Blogs that don’t have social media buttons and sharing options using email are uncommon.

I think it’s relevant to include native integration for at least the popular web services like Digg, Twitter, StumbleUpon and Facebook so that end-users don’t have to rely on and maintain third-party plugins.

Social media integration is so commonplace that the "twitter" plugin tag is a popular tag amongst more general keyword tags such as "Post", "widget", "image", and "sidebar."

6. Site Statistics

Site Statistics

The capacity to learn about what content works and what doesn’t is key to being able to produce content that people view the most. The tool that’s central to this understanding of our content is website analytics.

The Automattic team, founders of WordPress and WordPress.com, has developed a statistics plugin that’s among the top WordPress plugins installed — it gets over 30,000 downloads per week[1].

The plugin shows administrators top referrers (where visitors are coming from), popular posts, site traffic statistics, and a pretty line graph that visualizes site traffic trends.

It’s time to adopt this plugin into WordPress.

7. Web Form Builder

Web Form Builder

HTML web forms are crucial to most modern sites: They’re the primary means of enabling communication and input from users. Comments, surveys, polls, contact forms, and content submissions are all large components of content-driven sites and they all need web forms.

Having a form builder interface, similar to the navigation and header builders that came with WordPress 3.0, can help users create custom web forms to increase interaction with site visitors.

8. Minification of Source Code

Minification is the procedure of taking out excess characters (tabs, spaces, line breaks) in HTML documents, JavaScript, and CSS. The purpose of minification is to reduce file sizes of these page assets to improve page response times, thereby enhancing the user’s experience.

Minification also serves as an added layer of security (through obscurity), making it a tad bit more challenging for hackers to find vulnerabilities in your JavaScripts. It’s therefore a good idea to have an option for site owners to minify their WordPress-generated pages.

I’ll be the first to admit that creating a set of minification functions is difficult; thinking about pattern-matching of HTML alone is a scary task. But there are numerous open source projects already in existence, such as HTML Tidy for HTML and JSMIN for JavaScript, that can be accommodated into WordPress to ease the implementation process.

9. Better Site Search

Better Site Search

WordPress’ built-in search is terrible. It’s one of the first things that’s replaced by third-party web service like Google Custom Search in a new WordPress site deployment. Don’t just take my word for it: WordPress guru, Joost de Valk, once said, "WordPress default search kinda sucks."

It "kinda sucks" so much that even WordPress.org — the official site of the publishing platform — doesn’t use it (the site uses Yahoo! Search BOSS).

Comparing built-in search features to other CMSs like Drupal, I know WordPress can do better. Search, right now, only looks for literal matches in blog posts, excluding other things like comments and metadata (e.g. searching for the name of your favorite author won’t result to anything if the template generates the name using the the_author template tag).

A better search algorithm should be a primary focus for the next iteration of WordPress. Barring that, native integration of popular third-party web services like Google Custom Search or Yahoo! Search BOSS is an okay compromise.

10. Content Rating

Content Rating

The ability to rate content, including user comments, pages, and other content types is a good design pattern for increasing user participation. Content rating opens up a lot of possibilities, such as displaying a dynamic list of the most popular content based on user rating on the sidebar or the ability to sort archives based on popularity.

Content rating can also help the site owner identify content that users like so they can make more of it. Additionally, under the expertise of a theme developer, it can help with site maintenance, such as in the case of auto-deletion of spam comments if a comment is downvoted a lot or flagged as spam.

What other features are missing in WordPress? What are other benefits of incorporating these features into WordPress?

References

  1. WordPress.com Stats Stats – number based on recent week number of downloads.

Related Content

About the Author

Jacob Gube is the Founder and Chief Editor of Six Revisions. He’s also a web developer/designer who specializes in front-end development (JavaScript, HTML, CSS) and PHP development, and a book author. If you’d like to connect with him, head on over to the contact page and follow him on Twitter: @sixrevisions.

104 Comments

Dan

July 1st, 2010

Nice post, but this is kind of what plugins are for. Of course it’d be nice to get those features straight out of the box, but at the same time it’s nice there are third parties dedicated to those plugins ensuring they’re always getting updated and changed, whereas if they WP features they’d only be fixed with new WP releases.

Also with plugins we have the option to choose between different ones with similar in functionality dependent on our preferences, that and we can adjust them ourselves.

Good post though, maybe you should follow up with a 10 Plugins to Replace WordPress’ Missing Features?

Ralph

July 1st, 2010

The problem would be choosing which versions of each feature WordPress would incorporate. For example, should it use a ShareIt-like feature or a SexyBookmarks-like feature for the social media integration. If you include all versions, you end up with the bulk problem again.

I think it would be better to have installation profiles like Drupal. They could come with preinstalled plugins so that user don’t have to search for and install the plugins themselves.

You may still have the problem of orphaned plugins, but WordPress could easily ensure that it’s most used installation profiles are always kept up to date.

Claudiu

July 1st, 2010

With “better site search” I couldn’t agree more. As for the others, I like the fact that they are plugin based and I can choose the ones I like the most. I think this is the point of WordPress and what makes it so strong in the end.

However, beside “Better site search” I’d definitely go with “seamless plugin update”. I guess this would take care of all the issue raised by you here.

Hernan Silva

July 1st, 2010

The pagination and web caching features are a MUST, wordpress should include those by default.

What is the plugin shown in the “Web Form Builder” image?

Jacob Gube

July 1st, 2010

@Dan: While plugins are nice for highly-specific and limited use features (like a link shortener feature…), commonplace features should come with any of your software. Pagination is a good example. It would be like your development environment (think Coda or Dreamweaver) requiring you to get a plugin for a common feature like FTP. And as stated above, plugins are costly, resource and performance-wise. Integration of this feature within the actual system will improve performance. EDIT: And yes, I like your idea of a follow-up post. I sort of wrote this a while ago, 6 Critical WordPress Plugins You Should Have Installed but it doesn’t cover some things like form builders and stats. It only covers the actual plugins I have installed on both our sites. For example, since there’s no web form builder, I rely on third-party software such as Wufoo or Google Forms to administer web-based forms, and Poll Daddy for the occasional polls you see here on the site. Same with statistics: No native feature, then I’ll use Google Analytics. If WordPress had these built-in, I wouldn’t need to use those third-party software, or at least, not as much.

@Ralph: I like your idea of installation profiles. As for which style to pick, WordPress picks the one their UI team picks. The UI is great thus far, so they pick a style that matches the native interface. Not doing it because making the decision between what style to pick is hard is not a good reason to not do something. A bad decision is, in many instances, better than no decision at all. You can include various styles. And if you don’t like it, then you’re free to install a plugin to extend the options. What’s great about this, as I see it, is extending the WordPress API and providing theme developers an integrated method for styling the buttons and such.

@Claudiu: You could still choose plugins. The theory is, if a plugin can do a better job than the native feature, than it will be created by a developer and you will use it. Same situation with better search: Native search funtionality isn’t very good, so what do you do? You look for a plugin that’s better. Plugins will always be there. But core features of a CMS should not be an auxiliary function, it should be integrated to the core.

@Hernan Silva: WP-ContactForm.

Great comments guys, please keep ‘em coming!

Michael Oeser

July 1st, 2010

Well, I also think most of the features should be covered by plugins. But maybe it would be good to have them as “core plugins” that are tested and approved by WP to avoid bad coded stuff to slow down your site.

I don´t think these should be available by default because they will blow up WP in any case and if I don´t need them, I don´t want them to be part of my installation.

Tony

July 1st, 2010

I agree with much of what you say, but one of the beauties of WordPress is the Plugins feature. However, it’s also one of the problem areas, since trying to find a plugin that does what you want is often tedious, with so many thousands to choose from, and often those you select turn out to be obsolete.

Optimisation of load times, by minimising the code and caching ought to be a priority. Page loading times for some sites is very slow.

Iva

July 1st, 2010

I was waiting for custom post types for years…I’ll wait for web caching. In the meantime, the hosting company will be threatening me each time I have a good day.

I agree with the whole list apart from the last item – that feature simply calls for various idiots to abuse it. :(

Phillip Gibb

July 1st, 2010

I agree on most counts – although you could argue that themes and plugins pretty much solve all the missing aspects.
I do think that “Social Media Integration for Popular Web Services” and “Content Rating” will never make it into WP (other than thru plugins) because of the changing and growing nature of social networking (GoogleMe might just pop up any day)
As for site search – it should have Google/whatever else integration.

Chris Olbekson

July 1st, 2010

Why release a new default theme every year? Is it really worth the increase in the code base’s bulk to give end-users an interface for designing custom headers?

Twentyten was released to showcase some of the new features like the custom nav menus and to give theme developers a basis on how to implement them. The increase of bulk you are referring to is this line of code that was added to twentyten’s functions.php

add_custom_background()

Actually some bulk was removed from the core code when the admin user interface was re designed. Most of the images were replaced with css.

Social Media, content rating, pagination, and related posts should all be the responsibility of the theme. Why would a CMS need any of that?

I agree with the caching to some extent but one single caching solution will not work for all server configurations out of the box.

I do agree the search function is lacking. One of the problems is that unless you use a custom archive template and customized loop the search results get lost on the page. You also have to right a function to have the results highlighted.

One of the best things about WordPress is that it is community open source software. Anyone who has a suggestion or way to improve the project is welcome to open a ticket.

Tom Walters

July 1st, 2010

And custom author images, that would be a big help, from not having to use a plugin.

Ali

July 1st, 2010

@people who say we should leave it to plugins:

Plugins cost resources and time, not to mention that they are eligible to break once a new version comes. Also, most WordPress users makes use of a myriad of plugins they need for all kind of reasons and that can lead to conflict and slow down the performance.

Fact of the matter is, regardless of how amazing WordPress is when it comes to quality of code and it’s foundations and abilities are still way below Drupal which main downfall is that it lacks user friendliness of WordPress and is mostly aimed at developers.

Plugins shouldn’t be a substitution for basic functionality such as pagination and search. It’s, frankly, a little silly.

BlogyMate

July 1st, 2010

We found lot more problem in wordpress and then we start building blogymate.com. It is a one platform for all blogger to write blog in easy and fast way. The project is now on testing stage. Hope it will come soon.

Michael Sync

July 1st, 2010

Seems like the author wants to write about wordpress.com (not wordpress).. Don’t make people confused..

Érico Oliveira

July 1st, 2010

11. Backup System!!

Rutger Groot

July 1st, 2010

I also like the fact that i can choose the plugins myself. A better search function and some minify and caching options out-of-the-box would be great though ;) Speed is what it’s all about lately.

David Coveney

July 1st, 2010

With regards to the site-search problem, we’ve built a (little known) site search plugin that is available in the plugins repository over at: http://wordpress.org/extend/plugins/spectacula-advanced-search/

Depending on how you choose to configure this plugin you can dramatically improve on the performance of your site’s search results in a way that suits your site and its visitors.

Tyler

July 1st, 2010

Yea, WordPress users can argue that WP comes with caching functionality out of the box, when in actuality the plugin is (super cache) is installed out of the box. It works, great, but I’m sure native support would be better.

Ajay

July 1st, 2010

Great Article. yeah it’s right that they do not possess all these features. This can be retained in the future version of WordPress or using plugins. Infact i too use WordPress ;)

Muhammad Yoosuf

July 1st, 2010

for now the wordpress is getting huge, than EE, Drupal, TextPattern, with 100% full featured feature of Blogging platform, but the points you mentioned was perfectly available with almost every bloging/CMS platform.

the sad part is still wordpress cant handle the SEO meta tags, still depends on Plugis, at least it should integrate with WordPress

good collection, and i am developing a theme with some of the features, hoping to release as a framework.

Chip Bennett

July 1st, 2010

I’ve no problem with most/all of this functionality being available as plugins rather than core (and all of them are, in fact, available via some pretty outstanding plugins). I think this way mainly because I don’t need all of this functionality to exist as WordPress core, so some of it just represents bloat *for me*.

Also, a properly written plugin doesn’t have to represent any additional overhead loss versus the same functionality existing in core.

Really, it is the (ease of) extensibility of WordPress that makes it so great.

Oh, by the way: you mentioned that the wordpress.org website doesn’t use the native WordPress search functionality. There’s a good reason for that: currently, the wordpress.org website is static HTML, and not built on WordPress. ;)

Shafiq Khan

July 1st, 2010

Good Article … Totally agree on Point 2 (Pagination with Multi-Page Navigation)

JG

July 1st, 2010

I agree with this article wholeheartedly.

These features should be in the core, that way most users can benefit from them instantly with a new installation.

More savvy users could then choose to turn off those features and replace them with whatever plugin they desire.

It should be the job of any CMS to REDUCE work by the end user, and not force them to put in time and effort hunting for plugins.

LR

July 1st, 2010

Multi-language support for CMS using WordPress would be also very useful.

Aminul Islam Sajib

July 1st, 2010

Interesting article. WordPress should by default add statistics option, sharing/bookmarking buttons, related posts, and pagination. These are the most required things. I hope any WordPress developer would visit this article and consider taking these features into WordPress next ‘serious’ release. :D

Ray Scott

July 1st, 2010

It’s pretty clear that you see this issue very differently from the WP folk. I’m inclined to agree with you on 3 points, caching, stats & because they’re more related to the WP core system code than something like social media integration that’s more of a connector, so WP should strengthen and expand the core, but leave the smaller, less popular bells and whistles features to the plug-in developers.

Matthias

July 1st, 2010

Funny how people always compare WordPress to other CMS’s like Drupal and complain about the lack of features. What you don’t seem to understand is that WordPress is not a CMS, it’s a blogging platform. If you want to use it as a full-grown CMS, live with the shortcomings or customise it to your likings, it’s open source.

I agree however that a few core things could be improved, like the search and pagination. But hey, I’m sure they would welcome code contributions.

Jenni

July 1st, 2010

I agree with Dan’s comment. Even Apple doesn’t force you to install apps. Perhaps an opt-out system upon installation or a series of checkboxes to select the features you want would be the best plan.

Several of the examples above can be ‘solved’/created with a couple of lines of code. A basic WP installation wouldn’t be installed with ALL the possible coding possibilities because it would be completely impractical, obviously. Many of them would be irrelevant.

I firmly believe that if you don’t have an understanding of basic code, you shouldn’t be hosting your own website. WordPress is not there to spoonfeed you or tell you what you should be doing with your installation, it’s up to you to find out…whether that’s asking on forums, buying books, looking at tutorials or installing plugins. Otherwise you may as well use a generic homepage creator with comment facilities.

There’s also another reason why WordPress lets its users choose which plugins to install – because it’s open source and not a crazy fascist dictatorship. Just because you think those options should be built in doesn’t mean everyone agrees with you. I don’t. 6 of those 10 I have no interest in. And I’d prefer to see a ‘Find Related Pages’ plugin/feature to supplement ‘Find Related Posts’, but that’s just my opinion.

And why give those who claim WP is bloated and slow any more reason to complain?

I do however agree that search should be a part of standard installation, as should spam-free forms. But whilst there are plugins to cater for that, I’m not that bothered. The properly developed plugins with a strong following are maintained just as well, if not more so, than WP itself, and they are generally the best ones anyway. The main disadvantages are that if WP developed the functionality you know it would work straight after a new release, and you’re not 100% assured that the code has been written in the most effective way.

Chip Bennett

July 1st, 2010

@Ali:

Plugins cost resources and time, not to mention that they are eligible to break once a new version comes.

As I said previously: properly written plugins (that use the WordPress plugin API properly) do not have to represent any additional overhead loss versus the same functionality existing in core.

Also, most WordPress users makes use of a myriad of plugins they need for all kind of reasons and that can lead to conflict and slow down the performance.

I use 40 plugins. I have no plugin conflicts or plugin-induced slowdown. Most importantly: those 40 plugins represent a lot of major (and minor) functionality. Personally, I would prefer to see the WordPress core development team focus on the things they’ve been focusing on – and making those things great – than see them roll my 40 plugins’ worth of functionality into core.

Fact of the matter is, regardless of how amazing WordPress is when it comes to quality of code and it’s foundations and abilities are still way below Drupal which main downfall is that it lacks user friendliness of WordPress and is mostly aimed at developers.

I’ve not seen Drupal’s code, so I can’t really comment on a comparison of WordPress and Drupal wrt quality of code. I’m not really sure what you mean by “foundations.” As for functionality, I’m perfectly happy with WordPress’ functionality, and the current development path.

You see, it is WordPress ease of use, user-friendliness, and ease of extensibility that makes it what it is. And all of those characteristics represent considerable time and effort by the core development team. If Drupal has chosen kitchen-sink functionality at the expense of use-friendliness and ease of extensibility, that’s their choice, of course. Personally, I’m happy that WordPress has made the opposite choice.

Plugins shouldn’t be a substitution for basic functionality such as pagination and search. It’s, frankly, a little silly.

WordPress *does* have basic functionality for site search and pagination. I use the native WordPress search functionality, and it works just fine for my site. Multi-page navigation links are a nice touch, which is why I use a plugin to provide this enhanced feature of WordPress’ native pagination functionality.

Alex Stanhope

July 1st, 2010

I’ve been a massive fan of WordPress for a good while now, but have often wondered why the following were never built into the core:

1: The ability to add Meta keywords and descriptions to posts and pages without the need for a third party plug-in, such as the All in One SEO pack.

2: The ability to change the order of pages through drag and drop – the current “Order” input field is so 2005 ;)

That said, given the thousands of cumulative hours spent by the devs in putting together a free system of this kind of power, I really mustn’t grumble, and as the updates keep coming, more and more nice things are finding their way into WP :)

Tushar

July 1st, 2010

Web caching feature is a very important feature.currently we are using customized plug-ins for this but wordpress developers should work on that.

matt

July 1st, 2010

other than the search, i disagree with all of these. Word press is all about customization. If it had all of those items as features, we would whine about how they dont meet specific needs, or lack of a custom look on each one.

I wouldnt use any of these on most projects.

so is installing a few plugins that hard?

Jennifer R

July 1st, 2010

I think only : Web Caching, Pagination, Custom User Role Permissions and Site Statistics are necessary function to be include in WordPress and the other wouldn’t :), especially the rating system may slow down WordPress site while many blogger do not need that.

Jacob Gube

July 1st, 2010

@matt:

so is installing a few plugins that hard?

That’s just silly, difficulty of installing plugins is not the reason, read the arguments in the article, thanks.

flagged

July 1st, 2010

Excellent article, i agree with all especially the search function, it has to be revamp somehow, i can only wish this can all be done before WordPress 4.0.

Rating is also very important, there are some good plugins out there, i myself am currently using http://www.ratingplugin.com, it does what i need it to do, much like facebook’s thumbs up “like”, but hopefully they will intergrate it into the core soon.

Cheers

Ali

July 1st, 2010

@Chip Bennett

I think I made a mistake of not making myself clear in the original comment. I don’t think and don’t agree that all of the 10 features listed in the article should be included in the core and I in no way think core should be flooded with a ton functionality that belongs to plugins.

But some WordPress functions need improvement (for example, search) and some really should be included (caching).

Going by logic alone, which is more important and more valuable for the overall product: proper caching or URL shortening?

I understand that a person can have a ton of plugins and not have any conflicts but on the other hand web is filled with WordPress problems where plugins conflict or influence the core in a negative way. This is mainly because there is no quality control (well, at least not sufficient one). However, this is a different matter entirely.

But on this I wholeheartedly agree with you: properly written plugins are essential.

Ali

July 1st, 2010

Ah and, sorry for the spam, I forgot to respond to the Drupal comment.

Thing is, Drupal is just as (well far more actually, if you take into account CCK and Views modules, not to mention the basic functionality) extensible as WordPress and far more powerful “under the hood.” But like you said: it’s not friendly enough, it’s really aimed at serious developers more than anyone else and is plagued by backend usability issues. This is why I use WordPress and would use EE or ModX if WordPress isn’t a viable option.

Mario Andrade

July 1st, 2010

Interesting post but WordPress is the basis of the CMS. Not all users need web analytics inside WordPress or content rating. That would mean an heavier charge or extra space on the server and those users wouldn’t need that. Same with social media integration.

I do feel that where is the need to implement common best practices such as better pagination and search.

Jacob Gube

July 1st, 2010

@Mario Andrade: Same argument can be made for short links (link shortener) and Custom Menus. It’s much easier to create your own menus using HTML/CSS, not so easy when you try and implement a stats plugin or rating system that, at the minimum, requires a table in your WP database. Your argument is based on taking up extra space on the server, my argument is if you have room for superfluous things like short links and custom header builders that are so limited in use, why can’t you have at least a basic statistics feature so that you can see how well your content is doing. It’s a publishing platform, your content is central to your long-term operation. Building a custom header, well, you do that only once in a while. How many times a day would you build a custom header for your site? How many times a day would you check your stats if it was built into the admin? It’s about relative usefulness. If your argument is centered on extra space, then there are a ton of things already built into WordPress that should be removed.

Edit: And just to add – what other CMSs do in these instances is having the feature disabled by default. Those that need it can activate it.

Rose

July 1st, 2010

While we’re at it, how about native breadcrumb navigation?

Chip Bennett

July 1st, 2010

@ Ali – RE: caching

The thing with caching is: not every solution will work in every environment (too many variables). That’s why there are so many different caching plugins. It would be a nightmare for the core team to try to roll all of the various caching plugins into a single solution in core. In this case, I think the plugin route is for the best.

@ Jacob Gube – RE: site statistics

I think statistical analysis is also better-left to plugins, since site statistics are a different beast entirely from content management. I would rather the WordPress core development team focus on content management, rather than site statistics. Again, this is functionality better-left to plugins.

RE: URL shortening

URL shortening is awesome functionality, that facilitates content-sharing (especially given the proliferation of micro-blogging services). The core functionality is incredibly lean. All the *default* shortURL consists of is the default postname (domain.com/?p=123). The functionality mainly consists of the API used to extend the shortURL. (The wp.me shortURL is actually provided by the WordPress.com Stats plugin.)

So, in this case, I think the core development team made the right decision.

Jordan Walker

July 1st, 2010

Each one of those plugins are great additions to WordPress

Hannes

July 1st, 2010

wordpress “missing” theese things is what makes it easy to start with, and may be one of its main success points, and like others said, its all really easily possible with plugins. And for some Point, I only think 1,2 and 9 are valid points if you are really looking for something that is missing

Dominic Watson

July 1st, 2010

@Michael Sync
– If he was talking about WordPress.com, why would he mention Minification of source code?

I’m not really that up on WordPress.com but I’ve had a play with WordPress. Good article.

Johan de Jong

July 1st, 2010

To be honest… I have to disagree to this post. Every single function you discribe should be included as plugins.
Most of the time you don’t need these functions, especially developers who use WP as CMS instead of blog.

I do think that some plugins (like wp-super-cache, wp-stats, etc.) should be adopted by the WordPress community and be shipped with WordPress (like Akismet and ‘Hello Dolly’).

Johann Dyck

July 1st, 2010

Easy Full Database and File Backup.

Sean Fisher

July 1st, 2010

For the most part, I do have to disagree with this article.
In some areas, plugins should be included with core WordPress, such as page caching (http://ma.tt/2005/05/wp-cache/). Site search also needs a major overhaul as well.

In other cases, though, such as pagination, user roles, web forms, stats, and related posts, these are best left as plugins. I mean, what hope would be left for the plugins that have similar features but aren’t included in core? That’s almost a monopoly to some extent. The community is thriving because WordPress allows its plugins to make WordPress, well, great.

As for Minification of Source Code, I’m not a fan of it. Being that WP core JS is minified already, users could be left in minify their CSS+JS at their own will. It could also prove a bit buggy in my opinion.

Randy

July 1st, 2010

I agree with all that is on this list. Sure, you can use plugins but you also have to “hope” the developer keeps up with that plugin. Having these as WordPress native features means WP will always maintain he code and you don’t have to worry about changing a plugin that ends up conflicting with a WP upgrade or, worse yet, becoming a security risk.

In response to these making the system yet even heavier on the server, etc., I would hope WP creates a way to completely bypass unused features, hence, not add to page weight.

Ryan

July 1st, 2010

Lots of people here are suggesting that WordPress should be more like Drupal by incorporating everything including the kitchen sink. However I would be more inclined to go the opposite direction and start removing a bunch of extraneous junk from the core. There’s a lot of stuff in there such as the theme editor, plugin editor, admin panel and more which aren’t always needed.

Samwell

July 1st, 2010

WordPress certainly wouldn’t be what it is without it’s wealth of plugins. Much like the iPhone with the App Store. I’ve used both WordPress and Drupal and I know which one I prefer. The creators of WordPress have spent all their time and efforts making the WordPress platform robust and the admin area intuitive (which is exactly what a CMS needs to be). I hope they continue doing that and let the community build the plugins.

Jake Goldman

July 1st, 2010

Completely disagree with all of these, except maybe #2 and #9.

And several others are do-able via the API (like custom roles), just aren’t exposed via the UI.

WordPress is great because it’s light weight and modular. Why build one official caching method when you can empower plug-ins to cache via any method preferred by the individual site?

Why have *one* social network integration approach when you can let plug-ins offer a variety of choices?

Why play favorites with tracking? I want to use Google Analytics, and that’s it.

WordPress.org is exploring the idea of “canonical plug-ins”, which would offer “endorsed” plug-ins that solve many of these problems, as a compromise of sorts for those that want an “official” caching solution, and those of us who want choice coupled with a light weight platform.

We already have a bloated CMS in Joomla. Let’s keep WordPress light weight, please.

Rakesh Solanki

July 1st, 2010

Thanks Jacob Gube for amazing and inspirational post, i hope wordpress will consider these aspects.

AKLP

July 1st, 2010

i think #4 (4. Custom User Role Permissions) is the most significant one.
I mean if you want to make wordpress a proper CMS 1st thing you need to do is to make custom user roles and permissions

George Rhodes

July 1st, 2010

A couple of additions I would love to see…

Clone Page – Duplicate Page – Create Page Like This
How many times do you make similar pages? Wouldn’t it be nice to just have a clone page button and make a few edits?

Notes
Wouldn’t it be nice to have a note pad in the dashboard to store snippets of code or text?

Gilbert

July 1st, 2010

I’d just like to point out that WordPress doesn’t “release a new default theme every year”. TwentyTen replaced Kubrick which has been around for years.

As for the plugins. While having some of these things out of the box would be nice, you have to consider the balance between “bloat” and “features”. Keeping WordPress easy to use is still a concern. For example most people who use WordPress probably don’t need caching (as their sites won’t be busy enough). So instead of an out of the box feature it is better suited as a plugin for people who need it (and hence keeps the base application easier to use).

That said, the search functionality really does need a good revamp.

BadCat

July 1st, 2010

Re: Caching

Depending upon your need – caching is already baked in, just not turned on.
http://codex.wordpress.org/Function_Reference/WP_Cache

And of course the older functions.php — define( ‘ENABLE_CACHE’, true );
http://wpengineer.com/use-wordpress-cache/

hth

Jae Xavier

July 1st, 2010

I’m sure WordPress will steadily meet these features…. especially the form builder.

but what about washing the dishes and my car? ^ . ^

Mae

July 1st, 2010

I agree with Jake, these stuff, except pagination, I guess are stuff that a huge blog will need and not all bloggers need all of that. I don’t even know if every blogger that uses WordPress are aware of *all* of the WP features.

I like that I can choose what I want to use and not tied down to just one option. I know it will be convenient but it will mean bloated code and I know people who have already jumped to another platform because WordPress is no longer the lightweight blogging platform it used to be. Believe it or not, most people would just like to use it to be able to blog.

A nice thing would be a way for you to choose and get all of the plugins that you want in a zipped file, I’m not sure if it’s jquery or mootools that does that kind of thing.

Tony

July 1st, 2010

Spot on! Although most of these are already available with a plugin…

Heam

July 1st, 2010

I think its better to keep wordpress clean , if somebody wants these codes and tools he/she can use plugin or hack the theme or function.php, they are not that necessary to add them to wordpress core.

Tanner

July 1st, 2010

I for one would be happier if wordpress kept it’s code lighter rather than clutter it up with lots of built in functionality that you may or may not need. As more than a handful of commenters have said, that’s what plugins are for.

The menu builder + Multi-site functionality were nice additions to 3.0 kudos for that, otherwise besides those things the bug fixes i would have rather kept things separate and allow for plugins to fill in the rest of the gaps on a per-need basis.

nilambar sharma

July 1st, 2010

damn true. these are highly demanded in WP. Hope they will be incorporated in next releases of WP so that we would not have to use lots of plugins.

Mike

July 1st, 2010

I agree with Rose, native breadcrumbs would be nice. The next iteration needs to identify what is absolutely vital with what can be extended.

wonderyak

July 1st, 2010

I agree with some of the point of the article, however I may be in a minority that thinks if anything, wordpress should be streamlining features and possibly moving things out of core.

I like using plugins because I might not need all of these features, and some of them might hinder performance.

Imagine a poorly coded and buggy statistics system?

Mark

July 1st, 2010

WordPress is just a base. Some really spectacular plugins do all of those things in the articles.

I think WordPress should stay the way it is because if not then you get this bloated piece of blogging software (Aka the MS office suite)

Nabeel Ahmed

July 1st, 2010

Here’s a post about Plugins to overcome these issues http://www.mushive.com/missing-features-in-wordpress-plugins

Jacob Gube

July 1st, 2010

@Nabeel Ahmed: Good follow-up.

gr0b1

July 1st, 2010

what are plugins for then ? lol very weird post.
Appart from #9 wich exists but isn’t implemented properly, none of theses should ever get into core.
very weird attention seeking post

Steve

July 1st, 2010

Man, a lot of people miss the point by saying “do it via a plugin instead”, well most of the new stuff in WordPress 3.0 can be done by a plugin so I suppose no further development of wordpress was needed and you won’t be upgrading? All these things in this article are now the standard of usability and SEO on any blog/CMS and aren’t just nice things to have and won’t be going away anytime soon. Plugins could still replace any of these as you see fit, as they do now.

Anna

July 1st, 2010

Absolutely true! Vote with both hands to have each of these features in core.

Nabeel Ahmed

July 1st, 2010

@Jacob Gube Thank you. I have learned a lot from you.

Gregg L. DesElms

July 1st, 2010

FROM THE ARTICLE: WordPress is used by huge websites with multiple authors (i.e. TechCrunch, Mashable, and Smashing Magazine all use WordPress, for example). These multi-author sites have the need to control who can do what.

MY RESPONSE: WordPress is not the right tool for such web sites… at least not if they function using a more or less traditional workflow such as newspapers and magazines have always utilized. For professional workflow, one needs to use a product like Campsite or Bricolage, just to name two (there are others).

One of my current web laments is that other than professional IT personnel who know how to pick the right software for the task are routinely choosing products like WordPress or Joomla to do jobs better suited to REAL content management systems (CMSs)… ostensibly, I suppose, because WordPress and Joomla are so popular, and because so many who are SUPPOSED to know which product to use stupidly tell people that WordPress and Joomla are CMSs and can do what’s needed.

The result is an ever-increasing number of web sites on which blogging should be but one function (and for THAT function on the site, what the heck, WordPress or Joomla (preferably WordPress, in my opinion) would be fine), but what’s on the rest of the site really has nothing to do with blogging; so you see these ham-handed web sites where everything from “About” or “Contact” pages to pseudo shopping cart functions being shoehorned into the limited capabilities of mere blogging engines. Site after site after site that isn’t only a blog nevertheless LOOKS like one because its owner isn’t really an IT professional, and doesn’t really know what s/he’s doing and got bad advice from others who do not get that neither Joomla nor WordPress are content management systems.

That’s right: They’re not, and wishing won’t change that.

They are but blogging engines, and that’s ALL they are; and I’ll bet it’ll be a long time, if ever, before they’re anything else.

Now, granted, in the hands of a gifted coder who’s aided by the proper template, parts of a WordPress- or Joomla-driven web site can be made to look and behave very non-blog-like… which is admittedly very cool, no doubt about it.

And WordPress’s ability to define fields in the back end indeed helps to blur the line between a mere blogging engine and a true CMS. I’ll grant that. But a mere blogging engine WordPress remains… like it or not. And, yes, I fully expect to be taken to task here for saying it. But as Luther said, here I stand.

If I were running a large newspaper or magazine web site, I’d not let the likes of WordPress or Joomla anywhere NEAR it. I’d be so rigid and literal about it that I’d make vendors who include them in their products lease an offsite meeting room to make their sales pitches to me because I’d not even want them in the building. I’m serious.

Any big newspaper or magazine web site which uses WordPress has obviously either shut down its IT department; or has so dumbed it down that there’s no one in it anymore who actually knows what s/he’s doing; or has refused to let IT do its job and so is likely run by writers who couldn’t punch their way out of a technological paper sack.

And so they end-up reading web pages like this which lament WordPress’s lack of certain features which WordPress, in many cases, shouldn’t be expected to have had in the FIRST place! Instead, they should have consulted with real experts who know how to do a proper requirements study from both an IT *AND* end-user perspective, and then find the right software for the job…

…like I’ve been doing for 33 years (at this writing), and so I know what I’m talking about. My proof? I defy anyone to ever find a single one of my clients even experiencing the yearning, much less reading web pages like this one.

___________________________________
Gregg L. DesElms
Napa, California USA
gregg at greggdeselms dot com

Andrew Nacin

July 1st, 2010

Jacob -

Nice post with interesting arguments. I’m going to take just one of ten and try to present my thoughts, though I’m going to try to follow up with a post on my own blog on the other nine. While my thoughts are likely shared by the rest of the core team in most respects, they are my own.

4. Custom User Role Permissions.

Very simply, the capabilities API is too complicated, and it has a heavy impact on performance. I have yet to see a plugin that takes full advantage of some of the lesser-known aspects of the API. Two aspects of the API were actually broken for a few versions, and no one even noticed.

The problems and potential solutions have been described extensively on this ticket. I believe the current thought is to tackle the API in a future version, perhaps 3.1, and simplify the API. It would largely retain its power, but shift more to roles and introduce a nice performance benefit. With those changes, I think we would want to build a plugin for user role permissions.

That all said, there are valid arguments to be had for some of the other features, but at the same time, there are other reasons for why they are not, and in many cases it is the same few arguments: flexibility, performance, choices/options, and a preference to facilitate features (take the shortlink API for example).

***

Also, there was one comment above said “Plugins cost resources and time.” Core also needs resources and time. Adding a feature to core means more resources needed for everyone, while a plugin only adds resource requirements that to sites that need it. Core also extensively uses its own plugin architecture to simply hook into itself, the same way a plugin does — it’s not like plugins add additional overhead beyond the same way the code in core might.

P.S. WordPress.org currently uses a myriad of loosely connected bbPress, WordPress, and BuddyPress installs. Using Yahoo search was a decision made long ago, and it doesn’t really have to do with the quality of the built-in search in WordPress core.

Reyven

July 1st, 2010

Very nice article indeed.

“What plug-ins are for?” is such a straight to the point question to associate with those on the list. But the fact that WordPress is a CMS built to ease website management(even for “not so” technical users), those features might really a very big help.

I know third-party features are somewhat plug-and-play, but I have to say that some really requires critical tweaks.

Keeping track of 10 or more plug-in updates and keeping track of a single core upgrade are two really different things for any perspective.

Just a thought.

Alex (Viper007Bond)

July 1st, 2010

Honestly I prefer to have all of these features as plugins (which all 10 of those features are already available as). I want to build my own edition of WordPress using the core and then plugins to make it fit my needs.

BTW, persistent caching used to be in the core a few years ago, but it was removed as caching actually makes sites slower for low traffic blogs and has it’s drawbacks too (lack of dynamically changing content).

Also the upcoming core plugins should help a lot with users being overwhelmed by plugin choices. The idea of those is to keep those popular features that many (but not most) people want to use as plugins but that are officially maintained. That way you get a nice sleek and fast core with easy to bolt on addons.

Reyven

July 1st, 2010

Maybe I can also add some.

1. Meta Keywords and Description – Could be an additional custom field in every posts. This should be very useful for SEO purpose.

2. sitemap.xml Generator – It can be a single button or will update automatically after publishing any posts. Another good help for Google indexing.

Cheers.

Jacob Gube

July 1st, 2010

@Andrew Nacin: Thanks for stopping by and sharing your views on the subject. I want to make it clear that I support WordPress: I’m not criticizing the awesome things the core devs are doing, but rather, presenting alternative ideas that could be useful to a lot of people (like me). What I hope this says to you is, “What could make WordPress even more awesomer than it is now.”

I understand the project’s philosophies, and I understand why some things like stats or form builder or minification (most people probably don’t know what that is) aren’t/wouldn’t be core. It would be great if they were, but I also know that being the guy wishing it is 100x easier than being the guy/s that has to write it into core.

Jacob Gube

July 1st, 2010

@Gregg L. DesElms

I’ve been doing for 33 years (at this writing), and so I know what I’m talking about.

Maybe you do know. But it’s unfair to say that CNN, MTV, Reuters, MIT (one of the pioneering institutions in the development of the Internet, and by default, IT, and by default, your profession as an IT professional), Mozilla, and many other equally successful companies and institutions are uneducated, clueless, and unprofessional — they seem to be just fine with WordPress.

Ryan

July 1st, 2010

I’m totally agree with WordPress search. We need more relevance result

Andrew Nacin

July 1st, 2010

@Jacob: Thanks for the reply! Trust me, you don’t need to make clear to me how much you support WordPress, and alternative views are always appreciated and even encouraged :-)

Some of these things should absolutely be in core, in theory. But in practice there are just too many practical hurdles and excellent considerations that counter their usefulness.

Jakes

July 2nd, 2010

These all features are provided by plugins. If we integrate all these into wordpress, it will become only complex. And, many of these features depend on the needs of a blogger. Often, only some of the afore-mentioned features are required by a blogger

Micah

July 2nd, 2010

I barked up the caching, minification, and even compression trees on the WP trac creating a ticket and supporting another ticket on the topics. Sadly, there’s a stubborn resistance against these concepts as anything other than plugin material. Arguments aside, I’m not the only one who was dismissed on these topics.

WP devs have done some beautiful things with WP 3.0, but specific performance and security issues, a couple of which you stated, should not be dismissed from core functionality like they currently are.

Including caching, minification and compression into the WP core for the client-side would put WP into the progressive category better competing against full-blown open source CMSes like Drupal and Joomla, both of which include many of the features you stated in your post. Since compression and minification are common amongst admin-side files, the opportunity and framework should be promoted for client-side as well with built-in options or resources.

The issue that Viper007Bond explained about bad caching performance was due to a controversially poor method being used, but it’s sad that this concept was never reintroduced in a more practical way especially considering it’s been a few years and the landscape has changed and improved since that time.

WP really should be on the forefront to promote performance and security best practices, offering either solutions in the core or blatantly obvious API/framework to support these things.

David

July 2nd, 2010

Thanks for posting this, i think the new WordPress is much better than previous version, but i still agree with most of your points.

Minification and an improved search facility are the most needed for me, however i have no problem with installing plug-ins, it’s pretty simple.

Francois

July 2nd, 2010

I agree that some of these points should be in the core (pagination, web caching, better search), but other should stay as plugins (rating for exemple).

Gregor McKelvie

July 2nd, 2010

Related articles and forms are the back ones for me. Historically, CMS’s don’t have good form building capability, so WordPress so get on this.

Lakeside Techies

July 2nd, 2010

WordPress is cool no doubt about that. But still there are a lot of features which are common to any users out there which have not been added in the standard wordpress.

I very much agree with this article.

Multyshades

July 2nd, 2010

Great article, you have nicely point out these listed features,I agreed, thanks for share.

Hitesh Joshi

July 2nd, 2010

Well, These are the things that you found missing. Other’s may not found these things necessary. So better plugins do this.

Gregg L. DesElms

July 2nd, 2010

JACOB GUBE WROTE: “…they seem to be just fine with WordPress.”

GREGG DesELMS REPLY: Er, well… you know… except for custom role permissions, and workflow, and… er… how many features does YOUR OWN ARTICLE say are missing? It’s just the tip of the iceberg, trust me.

The not-terribly-technical always seem to defend, insensibly, their insensible positions; and tend to be fiercely loyal to whatever platform they’ve insensibly adopted. Don’t believe it? Just TRY to tell a Mac user that… er… well… pretty much ANYTHING, now that I think about it.

Just try.

___________________________________
Gregg L. DesElms
Napa, California USA
gregg at greggdeselms dot com

Ilie Ciorba

July 2nd, 2010

While reading this article I was thinking like “Yeah, that’s true” then ” yeah, that’s also needed” and then “this would be great” – so what can I say?
Although WP is missing some basic functions most of then can be replaced by plugins, which are so numerous around the web that you can create anything from your wp blog.

I would like to see as a default feature, Site Statistics, but on the other hand, especially if you’re runing multiple sites, it’s better to have one single site to track all the visitors and statistics from all your websites instead of logging on every singe site to see what’s up. But, if you’re the owner of one single blog, having an integrated statistics feature would be just great.

I also want a better search on wp. Take my blog as an example, at this moment it doesn’t have too much content on it, bu it is already hard to find somehting you’re loooking for using search, try to search for “art” or “cs5″ and you’ll see a half of my post in your results. The same thing with Vectortuts+, it’s mcuh easier to use google to search for the articles there instead of using their search.

What about content rating, do we need that? I think that the stats of your posts on sites like stumbleupon or digg are already good raters.

What I really scared of, is the Social Media plugins integration. There is nothing bad about social media, but I just hate to see starting blog that are trying to collect some more traffic from social media sites and are filling their posts with hundreds of buttons. I preffer using just 2-3 most popular sites. That’s always enough!

hakre

July 3rd, 2010

Do you want to kill our jobs?

Jacob Gube

July 3rd, 2010

@Gregg L. DesElms: Your argument’s based on WordPress not having these features, but you took my words out of context, skipping the fact that I said at the introduction that most of these features (if not all) exist – as plugins. So, if your clients wanted these features, and they wanted to use WordPress, then they would have these features. You have to know that the organizations I mentioned (CNN, Reuters, MIT, Mozilla, Mashable, TechCrunch) also have CTOs, IT consultants, software engineers, sys admins, who have to sign off on WordPress. What you’re saying is that they’re all clueless, unprofessional, uneducated — but proof’s in the pudding — they’re running multi-million-dollar, very high traffic sites, and they put all that on WordPress.

Paul

July 3rd, 2010

wptimemachine.com … for anybody who mentioned backups as a missing feature.

Toby

July 4th, 2010

Honestly the only thing here I think should be added to the WP core is web caching. It’s always been a goal of the WP development team to keep it as slender as possible and not turn WP into bloatware. Other than web caching, the others fall firmly under the role of plugins, or even themes, and both are readily available for almost all of these features.

Toby

July 4th, 2010

Except for search, you are right there. Seeing as it’s already a part of WP core, and a fairly integral part, it should be beefed right up – because right now, it does suck =)

Matthew Moran

July 4th, 2010

Completely disagree with 99% of this post. Search is about the only part you’ve got right here. Otherwise, you fail to see the purpose of WordPress and plugins.

Nottingham

July 7th, 2010

I’ve just finished design and developing a site in WordPress… one of many, and I’ve never had so much trouble with one, and it was all down to Search! So annoying I spent days playing with it, too this date I don;t understand it fully!

Daniel Craig Jallits

July 7th, 2010

Better Search… Hands down would be in my opinion the best focus of core development time.

Siku

July 7th, 2010

Hello Jacob, This is a very interesting article. No doubt WordPress is an outstanding blogging platform (which can also be used as a CMS for small websites) but I too believe they should include these features in their platform. Cheers.

sky

July 9th, 2010

wordpress have many great plugin..
i use auto social poster to socialize my blog..
if you want it..download here..

[link removed]

subzero525

July 25th, 2010

i don’t know why i always have a problem with my web cashing always cause some freak changes to my site

maisWebHosting

August 21st, 2010

Still we are in the version 3.0.1 and these features aren’t real.

Some of these features you can do with plugins, but that isn’t the same thing and some plugins need a good quantity of memory.

Regards

Jitendra

September 10th, 2010

All these features can be acheived by using plugins. There are excellent plugins for adding new features to wordpress for example the Wp-Pagenavi plugin for pagination but yes, I agree that providing these features bydefault with wordpress would be great. May be some plugin developers can constribute in adding these features to WordPress… :)

Joe

April 6th, 2011

@Gregg L. DesElms
Kudos for someone else who realizes WP works fine for blogs, but is horrible for just about anything else. I work for a web company that has been trying to use WP for our clients for awhile now, and we are starting to see how bad it really gets. Why does WP use regular expressions for URL parsing? This causes any site with a decent amount of content to take forever to load pages and to save new content. We have one client with over 500 pages, and their site is pretty much unusable (even with WP Super Cache set to max) because of this.

Also, there is the ‘randomly show rss feeds instead of pages’ issue that has shown up on several of our clients sites now. I tried to track this down in the WP core code to fix it, but it was so horribly written I could not follow it.

For what my advice is worth, use WP for blogging (which it does well), for anything else look at a real CMS (like Drupal).

Leave a Comment

Subscribe to the comments on this article.