Wordpress custom posts vs concrete5 custom content (attributes, composer, single-page editing interface...)

I had a client ask me the other day why I've switched over from Wordpress to concrete5 and I had to think about it.

The last site I built with Wordpress made heavy use of custom post types. Here is what I found but I'm interested in hearing feedback from other people who've used both CMSes because I did find it hard to articulate to my client.

In general I found I had a **lot less** code to write and maintain with concrete5 and that clients have an easier time learning to use concrete5.

List Pages
In concrete5, any page can be made into a list view by adding the PageList block (or by hard-coding it into your template)

In Wordpress, you can make an "archive page" or you can code it into a template by using the Wordpress loop. But once you make the template, you have to go into the admin to attach the template to a given Wordpress Page or Archive. Then you have to tell the user to try and not edit this page because you are using it as a list view (actually).

Also, you can make list views of specific taxonomy types (say, you have a taxonomy called "menu" and you want to create a page that lists all "appetizers"). However, the last time I tried this, trying to make the permalinks work with these custom list-views landed me in a zone where I could not make my perma links work for days.

In concrete5, your permalink name is structured by the title of your page. So if you change your page title, everything updates nicely - page title, permalink, and links.

Custom Content
In concrete5, you can make custom content by using custom attributes. You can then grab a specific page and it's attributes by using built-in concrete5 methods.

In Wordpress, you can do a similar thing with custom posts. However, while concrete5 has table rows for each attribute, with custom posts the data is serialized and then put into the database under the "options" table. I suspect this slows down the site somewhat.

Also, by using composer and addons such as designers block, in concrete5 it seems easy enough to add "custom content textareas" and so on into the admin system.

In Wordpress, you have to do this by "hooking" into the admin with methods that have a large amount of parameters, i.e.

add_meta_box("home", "Home", "home_values", "page", "normal", "low");

Permissions in concrete5 is pretty much point-and-click. You can create groups and through pointing and clicking, you can turn on or off access to various pages and blocks.

In Wordpress, you have to hook into the admin bar method and then "exclude" certain users based on their level of access (which is a number from 1-10):

add_action( 'wp_before_admin_bar_render', 'remove_admin_bar_links' );
function remove_admin_bar_links() {
        global $wp_admin_bar;
   if ($current_user->user_level < 10) {
         // write exclude code here

View Replies:
frz replied on at Permalink Reply
This is awesome.

I'd love to see you buff it out just a tad more and we'd add it to the Switch and Learn section over here:
nicolechung replied on at Permalink Reply
Sure, as long as someone else can read it over to make sure all the facts are correct. The last Wordpress site I made was months ago so I'm not sure if they've fixed their permalinking issues...

I'll start an .md file to look over.
nicolechung replied on at Permalink Reply 1 Attachment
Here is a draft, I haven't made proper code blocks yet however. But if someone can review the code quickly?
julia replied on at Permalink Reply
Yes, we are reviewing it now. I'd love to send you a t-shirt and a concrete5-owned add-on license of your choice. Please send me a PM and let me know what size/color shirt, where to mail it, and what add-on you'd like. Thanks for contributing this!
balods replied on at Permalink Reply
Can you send me also? ^^
chris123uk replied on at Permalink Reply
The only thing making me look back to wordpress is that they have popds now:


You can create custom content types and fields with it.
This could be as good as designer content pro.
Its also free.

I would love to use designer content pro on all my sites but the licence is restrictive so its making me look into wordpress.

The C5 licence modal of one licence per site i think will make a lot of people reconsider moving away from Wordpress even though Concrete5 is in my mind allot better.