33 Comments


  1. If ProcessWire wouldn’t be your first choice, what would be (and why)?

    Reply

    1. I don’t have an answer to that question. I haven’t tried out enough open source alternatives to come to a conclusion. But the ecosystem and community around WordPress makes it incredibly difficult to even consider leaving. But hey, if the new publishing system has 90% of what I need out of the box, maybe the other two things take on less importance.

      Reply

  2. I completely appreciate that Processwire is likely not the best choice for everyone. The point I made in the article was that in my case, it was the best option and as a result, I’m pleased with it. It is absolutely not the best system to move to from an existing blog unless you want to get into developing for yourself.

    In my post, however, I did not say that PW is better than WP as a blog tool. I said as a CMS it is better for my needs and that I think it does a better job as a CMS. This is a distinct issue.

    To further expand on why I think WP is not the best choice in some cases (and to expand on the bloat and plugin issue) I just wrote another post regarding my concerns.

    I’ll put the link here in case you want to check it out (http://www.cmscritic.com/wordpress-joomla-and-drupal-are-not-the-best-cms/) but do know I’m not replying to this comment in order to spam your blog so if you feel the need to remove the link, by all means feel free. I expanded a bit further into why I think the bloat and the plugins are an issue.

    Here’s an excerpt:

    I was able install (without any warning whatsoever) a plugin from 2008 on my system unknowingly. How does something like this happen? The plugin search capability within WordPress does not show the date the plugin was developed or warn you that it might not be compatible unless you hit the details button. If you search and read the excerpt of a plugin and think it’s what you are looking for, you can hit install and not have any idea that the plugin is 4 years old and likely to cause massive problems with your system.

    To be blunt, this is a complete joke and I’m floored that the repository hasn’t been purged of this old garbage by now or at the very least, a warning hasn’t even been implemented that checks the date and compatibility against your system and alerts you (or better yet prevents you) from installing a plugin that isn’t current.

    Don’t believe there are a ton of old plugins? Check this link. This is just a small sampling of a huge problem. Do you really think installing something developed for the release of WordPress from 2008 would be a good idea?

    ~Mike (CMS Critic)

    Reply

    1. “I was able install (without any warning whatsoever) a plugin from 2008 on my system unknowingly. How does something like this happen? ”

      So windows is a bad OS because it lets me run code written 20 years ago without notifying me about it?

      I think that this is the first time that I hear that stability of API and backward compatibility are bad things.

      Reply

      1. That’s a -dumb- _bad_ comparison.
        An Operating System versus a Content Management System?
        There’s apples to apples.
        Then there’s apples to oranges.
        You just compared an apples to an orchard.

        Reply
  3. Mc Whether

    You mentioned you spent only 30 minutes with Processwire. How much time have you spent with WordPress? I think the entire article has to be read with that context, though do respect your honesty. Your 30 minute opinion is probably about the same as my 30 minute opinion was, months ago. Now I’ve spent hours upon hours with both, and can tell you perspective changes a lot once you really get to know them both. Yes they are very different. Both are great for different reasons. I’d say that a lot of people are using WordPress for things that Processwire does a lot better. WordPress has the edge when you need a blog in 10 minutes, or when an existing WP theme does exactly what you need. For anything else, I’d have a hard time choosing WordPress.

    You are right that Processwire caters to developers at least in part by providing a better framework and feature set to developers than WordPress does. It’s simpler as a developer to accomplish nearly anything in Processwire than it is WordPress. But providing a better feature set to developers doesn’t mean that’s the only audience it caters to. Quite the contrary. I’d say you are incorrect in suggesting that Processwire doesn’t cater to end users. For most of us, the end users are people other than us… people that we build sites for. These people don’t necessarily know anything about the technology, but they find Processwire about as easy as it gets.

    Put a person that knows nothing about how to use WordPress or Processwire in front of both. See which one they find easier to use and see which one they manage to publish content in more quickly. My official tester (ok it’s my wife) found her way around Processwire a lot more quickly. In her words, “there’s a lot less distraction”.

    Reply

    1. I’ve spent seven years at least with WordPress and I remember it took two tries to finally get the ah-ha moment. Not only did I play around with it for 30 minutes, I spent time reading the history of the project, figuring out how the system works, determined there is no way for someone like me to add a front end theme and after all of my research, determined it’s not a publishing system for me, it’s a developer centric CMS/CMF.

      I don’t care about all the cool, fancy, markup output stuff ProcessWire does. What I do care about is how quickly and easily I can start publishing content to the world. It’s not quick and easy. I know there is something called a Blog Profile which I think is a plugin that adds blog like functionality to the CMS but I don’t want that in a plugin, I want that in core.

      See, you’re smart enough to know and understand what is going on under the hood of ProcessWire to see the benefits in it. I’m not. All I could think about while testing ProcessWire is how upset I’d be if I was a client and was handed a ProcessWire website. But, who knows, maybe a developer that sets everything up for me wouldn’t be so bad.

      The project is 4 years old, has a following, and an active community. But everything I’ve read and learned is just not intuitive to me. Nothing I saw or read gives me any reason to consider using ProcessWire which in effect, I’d end up turning into WordPress anyways with modules and what have you.

      Put a person that knows nothing about how to use WordPress or Processwire in front of both. See which one they find easier to use and see which one they manage to publish content in more quickly. My official tester (ok it’s my wife) found her way around Processwire a lot more quickly. In her words, “there’s a lot less distraction”.

      Hard to argue with the point of less distraction in ProcessWire. But give me a break. Of course it’s simpler and easier to navigate because there’s barely anything there to configure or mess with. From what I read, the Admin UI isn’t even needed but was created for the sake of having one. As the REST API makes its way to WordPress core in 4.1, it’s my understanding that this will help reorganize and simplify the WP administration experience. There is also the movement towards doing more administrative/content authoring from the front end of the site backing the backend less important.

      The Demo site for ProcessWire doesn’t impress me at all. I do like a few of the sites I saw in the showcase but I’d love to have access to the backend of one to see what makes it so easy to use.

      Reply

      1. > I don’t care about all the cool, fancy, markup output stuff ProcessWire does

        ProcessWire does not output anything you don’t tell it too. This is where it is developer-centric
        If there’s a P tag within another P tag, well, it’s because it was put there by the developer, not ProcessWire.
        Maybe you are content to have your chosen CMS output ghost characters and odd tags and content. But many developers and designers don’t want that. ProcessWire gives total control.

        > I know there is something called a Blog Profile which I think is a plugin that adds blog like functionality to the CMS but I don’t want that in a plugin, I want that in core.

        If you spent more than thirty measly minutes with ProcessWire, you would know that the Blog Profile is a completely functional website/blog where the user can add new posts and visitors can comment on those posts – it is NOT a plugin, nor module, nor addon.
        http://processwire.com/blogtest/

        > See, you’re smart enough to know and understand what is going on under the hood of ProcessWire to see the benefits in it. I’m not.

        You’re not?
        You’re not smart enough to know and understand what is going on under the hood of ProcessWire to see the benefits in it, because you didn’t spend enough time with it ;)
        You’re words amigo, not mine.

        Reply

  4. Looking through the demo for a bit .. it honestly reminds me a lot of EE.

    So out of the reasons I laughed about…
    – Bloat – but didn’t explain that the way I’d explain bloat in WP
    – Poor performance on their webhosting account… they hosted on Hostgator… facepalm.
    – Difficult to use caching plugins… due to ^^ those… this just makes me laugh. Having an “on/off” checkbox for “caching” is hilarious… clearly a technical implementation wasn’t needed but a simple plugin like /plugins/quick-cache/ would do just fine for him. I’m assuming he didn’t look or ask anybody in the community. There are no stats here, no proof that it was slow, and if there were it doesn’t seem they had the know-how to fix it anyways.

    I’m not saying WP isn’t faulted on a bunch of stuff but the reasonings here are pretty weak. Until you’re handling a few million pageviews a month with ease or at least setting up proper server architecture for your implementation I can’t take a post like this seriously.

    That said – I’ll probably check out PW a bit more just as it’s on my radar now – honestly never heard of it before. If anything this post is great exposure to this community of theirs. Seems to work for CMS Critic tho so – a biz decision is just that – i wish them the best.

    Also… sidenote – not being able to view the entire post (as an option) is horrible – good job on inflating pageviews for advertisers. ux = worse now.

    Reply
  5. Mc Whether

    > What I do care about is how quickly and easily I can start publishing content to the world.

    I think I mentioned earlier that this is still a good place to use WordPress over Processwire. Processwire is a system that you build a big/fancy/custom website that will run your business, application, web database, agency, etc. But if someone wants a site in 5 minutes, this is the place for WordPress. Sure you could setup a Processwire site in 5 minutes too, but WordPress shines with the “site in a box” thing especially with all the theme options. Processwire shines on on the “do anything at any size” thing.

    I don’t really see these two CMSs as “either-or”, because they are pretty different. But it does seem like lots of people use WordPress for things that Processwire is a lot better at and that’s all I was really trying to say. You aren’t one of those people. The way you described it, WordPress is fine for what you are doing. If you were really seeking out a switch to a different publishing system, you should be looking at dedicated blog systems, not full-on CMSs like Processwire.

    > I don’t care about all the cool, fancy, markup output stuff ProcessWire does.

    I think you might have this backwards … one of the benefits people note with Processwire is that it doesn’t do those things, leaving the site owner/developer in control.

    > I know there is something called a Blog Profile which I think is a plugin that adds blog like functionality to the CMS but I don’t want that in a plugin, I want that in core.

    It’s not a plugin, it’s what’s called a site profile. A site profile is roughly the same thing as a WP theme. Everything to power a blog is already in the core. The blog profile just shows how to achieve a WordPress-style output from what I gather. Most people using Processwire are trying to avoid a WordPress-style output though. After all, if you want the everyday WordPress output, you use WordPress. It’s for those times where you want something beyond it that Processwire gets quite interesting.

    > Of course it’s simpler and easier to navigate because there’s barely anything there to configure or mess with.

    Actually there is a lot, but it’s pretty strategic as to when/what you see. If you get down into it, there is a lot more available to configure in Processwire than there is in WordPress. But for regular editing and admin tasks it’s very clean and I think that’s what they are trying to achieve. I personally like the zen focus of Processwire’s interface versus WordPress, but I guess this is a subjective thing. When somebody’s been using a single product like WordPress for many years, I would expect that their senses and preferences would be tuned to it (and this is the case with one client of mine). But there are also plenty of us (designers, developers and clients) that use several different CMSs and things look different from this point of view.

    Reply

  6. It reminds me of Drupal quite a bit, but seems to have better performance.

    Reply

  7. Sorry, but while reading this post I can only picture someone trying very hard to read a text in Chinese during 30 minutes, and giving up saying “pf, this language sucks!”

    Reply

      1. You’re wrong, I read your post to the end and always hoped honestly it would get better. And I do think what I wrote summarizes it pretty well. Would you feel like teaching the guy from my metaphor to read Chinese?

        Reply

          1. You totally miss the point of his analogy.
            So I will re-phrase it for you/him:

            Let’s pretend you knew the Chinese language well. You write, read and understand the language fluently.
            *IF* someone trying very hard to read a text in Chinese during 30 minutes, and giving up saying “pf, this language sucks!”
            Would you feel like teaching the guy from my metaphor to read Chinese?


  8. Despite my many jokes, I am not sure it is always wise to make a direct comparison between ProcessWire and WordPress.

    However, there is an issue here that is not about the WP platform itself – there are many people out there who refer to themselves as developers who are using WP to try and put together business communication websites for clients.

    I believe this is not the best use of WordPress and not the best way to serve business clients. But it would be the perfect use for ProcessWire.

    I am, rather infamously, not a developer. My PHP knowledge is very basic as is my knowledge of JQuery. My HTML and CSS are fine.

    Despite that, I have been able to learn to use ProcessWire and create sites quickly and efficiently – it was a lot more fun than working with WordPress. Why? Because unlike WordPress, I am not trapped in the theme laden, plugin world that typifies both WP and Joomla.

    ProcessWire allows me to create a website in the same way I would with, for instance, Dreamweaver. I can be as free and adventurous as I like without worrying how it will shoehorn into the system. I can use any JQuery or Javascript fun, bouncy, spinning thing I want without having to have a “PW Version” created – they work out of the box. I have happily added Adobe Edge Animations without having to customise anything.

    ProcessWire then allows me to customise every page or sets of pages so that they are EXACTLY what the client needs; not almost. Pages in ProcessWire are just containers that hold data from fields – they can be used as Pages as you know them, or they can be used for all kinds of data sets. Maybe the term Pages is a little misleading, but they had to be called something!

    The point is that ProcessWire gives the developer and the designer a blank slate from which to create something bespoke and very, very specific – which is what every business website should be. And because of that, the designer, developer and copywriter can respect the client brief, the company’s brand values and the brand itself without compromise, while the engine that runs it all, ProcessWire, is transparent and rock solid.

    There is nothing wrong with WordPress – but it does get used in the wrong way frequently.

    Jeff, since you are not a developer, and maybe have no interest in learning how to develop or design, you are probably much better off staying with Drumlapress, and that is absolutely fine. But if you ever find that you want to do and learn more, find out what you can do from scratch without having to rely on plugin publishers and theme developers, then you will not find a better starting point that ProcessWire – even with almost no knowledge at all.

    In fact, we are starting to produce tutorials with people like yourself in mind – very detailed, step by step guides that do not just show you how to use ProcessWire but also teach you the very basic PHP that will help bring it all together.

    http://processwire.com/docs/tutorials/ (the community have only just started putting these together, but more will be along shortly)

    And so you know they are very simple and very accessible, I am writing them – me, a non-developer.

    If you get time to put more than thirty minutes aside at any point, play with ProcessWire properly. The community is very active and many of the users are not developers – and those that are, give their time freely and happily to help.

    Joss

    Reply

    1. Thanks for stopping by and contributing to the conversation. I haven’t written ProcessWire off completely. Perhaps in the next few weeks I’ll spend some time really trying to figure things out and if I end up with a few “ah-ha” moments, I’ll write about them. For now, part of this post is my documented attempt at trying to use a new platform for 30 minutes. I’ll be able to reference it if I have any ah-ha moments.

      I understand one of the biggest benefits to ProcessWire is getting a blank slate for everything. But it’s like certain theme frameworks for WordPress that give you the foundation but nothing else. I don’t know what to do if given a blank slate. Developers love the idea. I’ve never heard of ProcessWire except for when CMS Critic wrote about their switch and it’s a 4 year old platform.

      At the very least, this post gives ProcessWire some exposure they didn’t have before and it’s cool that it’s licensed under the GPL. Maybe it will at least get a few WordPress devs to try it out and see if it’s something they can add to their repertoire.

      Reply
  9. Matthew Schenker

    There is a basic-level mismatch when comparing WordPress to ProcessWire.

    First — I spent years working with WordPress, Drupal, and Joomla (aka Drumlapress, as my friend Joss notes above). All three of those systems make many assumptions about how your websites look and behave. I have now spent a couple of years with ProcessWire. It’s a natural extension of the technologies powering the Web: HTML, Javascript, CSS, and PHP. In other words, knowledge of how the Web works gives you greater insights into how ProcessWire works, and vice versa.

    You come to a system like WordPress looking for what to “plug in.” While it’s true that ProcessWire has a growing number of “modules,” these are generally meant to have their source code examined and discussed openly by the general community. I dare you to try that with WordPress, Joomla, or Drupal!

    Although there are a good number of plugins in the ProcessWire ecosystem, there are no “themes” or “templates.” A lack of themes is not a weakness, but rather one of the most attractive aspects of ProcessWire. Like HTML/CSS/Javascript/PHP, ProcessWire does not make assumptions about how your site is designed. Themes, by definition, lock you into a list of assumptions.

    It’s also important to note that although ProcessWire has an “admin back-end,” its real beauty and strength come from the fact that its core is a clean PHP framework. For that reason, ProcessWire perhaps is more related to systems like Yii, Laravel, and CodeIgniter than it is to the “big three” CMSs.

    I leave you with an analogy from woodworking: WordPress, Drupal, and Joomla are like pre-made project kits. All the wood pieces are cut to the right sizes for you, numbered according to how they must be assembled, with pre-drilled holes. You even get a set of various sized screws, a little bottle of glue, three mini cans of paint (just enough for the project), and a set of instructions you need to follow. With ProcessWire, it’s more like you have a project idea, and you jot down the sizes of all the parts and make a list of all the hardware you need, choose your own the paint colors and glue. Then you go to the store to buy it all. In the end, the project kit looks like everyone else who bought the same one. The one you made yourself takes longer, but it does more, and it’s unique.

    Reply

  10. I have been using WordPress and ProcessWire as a designer and frontend developer for a while now. Everything I mention from here on is from that perspective and this is an important distinction as both systems cater towards different audiences. Jeff, I get that you wouldn’t choose ProcessWire, that’s a very personal choice and probably the right one for you as long you don’t want to learn frontend development.

    It’s very easy to get caught up being in one camp or the other and the biggest determining factor in which you are in depends on what your level of experience is and in which area you focus. The fact is that the two systems (WordPress and ProcessWire) are very different with philosophies that are very separate from one another.

    WordPress is engineered to help people publish content, as quickly as possible and leans heavily towards blogging functionality. WordPress is probably the best in the industry at this. Whereas ProcessWire has been created to help designers with (frontend development experience) and developers to create very bespoke websites, quickly and in a streamlined way that ensures you only create what is needed for the job in hand.

    If you don’t have any interest in learning frontend development practices, you will have a very difficult and unenjoyable journey with ProcessWire. In that case, currently, WordPress is hands down the best choice for you of the two. However, on the other hand if you are a designer with technical frontend development capabilities you will probably find ProcessWire superior in most ways and can probably create more lean and efficient websites than with WordPress.

    The closest comparison between the two I could draw would be to say that (out of the box) ProcessWire is similar to starting out in WordPress with only pages, Pods and Advanced Custom Fields built into its core. You loose the posts, taxonomies and comments installed out of the box (they can be fairly quickly built with the Pods and ACF interface) but you gain amazing flexibility in how you want to approach the build of your site.

    Because WordPress is so popular, I am finding that around 80% of my work is done within WordPress at the moment. As a designer / frontend developer I seem to be attracting a lot of clients who actually ask for WordPress. I love WordPress as I find it easy to work with and the admin interface is stunning – aiding its immediacy for my clients. It’s very simple and quick for people to publish with the platform. However, there are a lot of things that bug me about it and as a developer I spend a lot of time turning things off within it, whether that is the WP Generator meta tag, comments or even posts etc.

    If it were my choice I personally would go with ProcessWire nearly every time, mainly because as others have pointed out here, that you can control the markup and functionality entirely. ProcessWire doesn’t make assumptions on how you want your markup displayed and the admin interface can be more easily tailored towards the client needs. The fact that I can easily create repeating field groups in the admin area and use a very simple jQuery style api to display the results, much more quickly than I can in WordPress caters towards those with more bespoke requirements perfectly. You just loose those turnkey capabilities in ProcessWire and for some jobs you will have to charge more.

    Reply

  11. they are vetted to make sure they don’t contain security vulnerabilities

    Not really. There is a basic review when the plugin is first added to the repository, but older plugins and updates to plugins are not reviewed.

    Reply
  12. Simon

    Processwire certainly is a CMS for Developers, if you dont know frontend development you won’t be happy with it. Period.

    The thing with Processwire is that you can convert exisiting templates extremly fast to a functioning site without changing any of your HTML Markup. You simply retrieve your content whether productitem,newsarticle,static page etc from the api and echo it.

    Managing content is fairly simple for the end user because mostly the site tree reflects your frontend site structure. My clients come from TYPO3 or WordPress and they enjoy the distraction free admin interface that leaves them basically no option other than creating pages or editing content.

    Also updating Processwire is super easy. You can just override the system directory with a new version and you are done.

    I once created a WordPress template and from a developer perspective I did not enjoy it. I did not like the way of splitting your template that much and found myself constantly googling for certain tricks to disable things in functions.php .

    Of course WordPress shines for a non developer. Tons of templates and plugins installable with one click to get you started fast. The admin interface also is great (ignoring the fact that static pages are still not organized in a tree) Mostly people use the install tool of their webhost and so on.

    But that is not the target audience for Processwire. Processwire is good for freelance developers and agency creating sites for small to medium businesses

    If i look at posts like this http://wpapprentice.com/blog/10-reasons-use-wordpress-run-business-website/ I see many reasons to use WordPress that actually don’t are dependent on the CMS but on the plugins and themes. E.g “WordPress is great for SEO” is only valid if your theme is properly configured and you use wpSEO or Yoast.

    Posts like http://www.sitepoint.com/wordpress-framework/ are simply (to this date) not true.

    Reply

    1. Based solely on your comment, I suspect many your issues with WordPress templating may have been due to you trying to emulate how most other things do it. You don’t need to split up template files the way most people do. I rarely do that myself as I find it horridly confusing and prefer to keep as many bits controlled by a single template as possible.

      Reply

      1. This. I lay that split templates blame squarely on the WP default themes, something they began with TwentyTwelve, I think.

        I took over a Drupal-WP conversion project, where the previous dev tried to build a duplicate of the Drupal site’s theme using TwentyTwelve as a base, and the vast number of split templates he ended up using made me ill, and the mess he made of the CSS file was epic. The problem was the guy seemed to be a pretty decent PHP coder, but he knew zip about WordPress… something that I seem to be running across more and more and I haven’t the faintest idea why.

        Reply

        1. Nope. That has goes wayyy back to Kubrick at least, then Twenty Ten, Twenty Eleven and so forth all followed suit.

          I’m not sure why people prefer the approach, but it seems to be very popular that is for sure.

          The problem was the guy seemed to be a pretty decent PHP coder, but he knew zip about WordPress… something that I seem to be running across more and more and I haven’t the faintest idea why.

          I think many people just never sit down and figure out how WordPress templates work. They copy the default themes and assume that is the only correct or even only way to do something, which can result in some truly horrid messes some times. It gets even worse when people try to make some Frankenstein child theme, so you end up with the parent theme and a child theme full of all sorts of garble making a diabolical mess which makes no sense to the original developer let alone any other poor sucker stuck trying to work on it.

          The worst examples I see, are usually of a child theme, but with a custom parent theme. Some developers clearly miss the entire point and concept of the parent/child theme concept.

          Reply

    2. You may want to check out the Roots theme, if for nothing else for its theme wrapper and its modular organization of template files.

      The WordPress theming system is very flexible and themes don’t have to be the way that you describe.

      Although the default themes (which I’m pretty sure you were looking at) probably aren’t the best example if you’re looking to develop from a DRY (don’t repeat yourself) approach.

      P.S. This was supposed to be a reply to Simon’s comment. Must’ve messed up the reply link click.

      Reply

  13. I’m not a WordPress user. I used it once and chose not to use it again. I’ve used ProcessWire for my past seven or eight sites.

    Soo …

    It sounds to me (based on the above few comments) that there are right AND wrong ways to cut up and organize your WordPress templates.
    In ProcessWire, there is no wrong way. There is no right way.
    You can use a php include for a header. Another php include for the footer. And combine your templates as YOU see fit.
    Or you can go the advanced method and follow a Ruby-escue method and chop your templates up and follow a MVC technique.

    Again, it’s been said by many other users of ProcessWire: totally custom. Your way.

    Reply

    1. No, you misunderstood. WordPress gives you complete control too, it’s just that most people (including the developers of the default theme) choose a method that many people find bizarre.

      Reply
  14. Alex

    This is just an article by a WordPress fanboy. You are underqualified to talk about whether processwire is as good a choice as WordPress. 30 minutes isn’t enough time to make an assessment. Also I find it hilarious that you say processwire wouldn’t be your first choice after WordPress when you haven’t even got a second choice. So it would make it your only other choice clearly based on what you actually know. Until you have reviewed every other cmf/s in the same manner then you can’t really tell me with good reason why processwire isn’t a runner up for you to WordPress. This is more of an attack. Boring. Suggestive article. Stick to WordPress. It’s probably for the best.

    Reply

    1. Once upon a time, Jeff was a Joomla fanboy. WordPress convinced him to switch. I’m sure if a better platform came along, Jeff would make the leap again. I know I would.

      Reply

  15. Jeff – what other systems do you use or like? If you did switch from WordPress, what would be your first choice. What have you spent more than 30 mins with and what CMS do you think you’d like to investigate further?

    Reply

Leave a Reply