What's in a website? And what system should I choose?
There are many choices of system for you to use for your website, and many things to take into consideration when making your choice: what you need now, and what you might need in the future being key.
A bit of history
Let's start with a bit of history, even if it's not really that long ago! 20 years ago, if you wanted a website, you had very little choice other than to go with a site consisting of a series of individual pages, each page built separately. Unless you were personally familiar with HTML code, or prepared to learn one of the layout building apps such as Front Page or Dreamweaver, you would be obliged to commission a developer to create your website. Generally a relatively expensive process, with a correspondingly high maintenance cost.
This resulted in a drive from within the web development community to come up with easier, and cheaper, ways of creating and maintaining websites. First came bespoke CMS (Content Management Systems), mostly developed for larger organisations, very often news/media companies, but closely behind that came the embryonic lower cost open source systems such as Drupal, Mambo (which subsequently forked into Joomla), and Wordpress. Later came the hosted basic 'website builder' apps which were adopted by hosting companies.
Best options now...
Both Joomla and Wordress have over the last few years evolved into very comprehensive user friendly systems, with Wordpress being the most popular by a considerable way. Website builder apps have also become more sophisticated, with probably the most well known and popular being Wix. Another front runner has been Drupal, which is a tool of choice for many development companies. Drupal suffers a bit from it's complexity, which probably makes it less suitable for most smaller enterprises that are less likely to have the knowledge to maintain their sites in house.
Hosted website builder apps
Although considerably improved, hosted website builder apps like Wix, and the builders provided by many hosting companies, still lag a long way behind the better CMS systems technically. Despite their claims, most are not generally search engine friendly, and options for expansion are limited. There is also the issue of longevity - if you want a system that will grow with your organisation, there may well be a point where you outgrow the limitations of a hosted app. Then you are faced with the increased effort and cost of migrating onto a more advanced package - this is the issue of corporate 'lock-in'.
For obvious reasons, the hosted website builder companies want to lock you in to using their service, and make it difficult to migrate your website away. The larger your site becomes, the bigger the job becomes, often requiring every page to be individually copied and transferred to the new site.
Consequrently, our view on website builder services such as Wix is they are best suited to micro-organisations who only need, or are only likely to need, a very basic website, not dependent upon search engine traffic, and which you might be prepared to discard as your requirement grows.
Wordpress has become one of the most ubiquitous CMS systems in the world, more than capable of handling most small and medium sized websites. It is particularly good for sites with a blog or with an emphasis on news output, as this is what it was designed to do from the outset. And therein lies its weakness. Its fundamental architecture is designed around blogging, and although there are many excellent extensions that provide enhanced capabilities such as e-commerce, these often involve a degree of technical compromise of which most users will be unaware.
Joomla was the leading CMS choice for several years, before being overtaken by Wordpress in popularity. Popularity is not always a good indicator of quality; Joomla has a huge global following, being one of the most technically advanced CMS systems.
Unlike Wordpress, conceptually Joomla was designed as a 'framework' to allow its 'components' to provide the the core functionality, as well as extended plugin capabilities. It also has a built in advanced ACL (Access Control Level) system which makes it much easier to tailor access to site (and administrator) content where required. From a practical user perspective, its standard deployment is no more difficult, and in many ways easier, to master than Wordpress.
Joomla and Wordpress compared
Let's be clear - both Joomla and Wordpress are excellent systems, but both have their strengths and weaknesses that can make each better suited to particular purposes.
From our testing, the Joomla core is marginally the faster of the two, as Wordpress has a slightly higher technical overhead, making it slightly slower to build a page before delivering it to the user, although both can be noticeably slowed down by multiple plugins and widgets.
For most small business sites, either will be excellent. If you want mainly blog functionality, then Wordpress will be the better option, as all the blogging functionality is deployed as standard, which in Joomla is a bit more complicated to set up.
As a site becomes larger, managing the page structure can become more complicated. Wordpress divides content into "pages" and "posts". Posts are blog posts, and Wordpress automatically sorts these into date category, and you can add topic categories and tags as well.
Pages are 'static' pages, and by default can't be organised by category or tags, which for larger sites can quickly become unwieldy to manage. There are plugins to help overcome this, but these are workarounds to deal with a fundamental limitation of the Wordpress core system.
Joomla, on the other hand, allows you to organise your pages into a virtually unlimited hierarchy of categories, together with a range of content management tools, making it very easy to manage your pages as your site grows - think of it like organising your pages rather like you might organise documents into folders on your computer. Tags are also built in, allowing you to tag all your pages and posts.
Joomla also has a built-in versioning control, so you can restore older versions of pages if they've been accidentally overwritten.
This makes Joomla better suited to larger sites, or sites that are likely to grow larger over time, where upgrading your site won't involve the manual migration of hundreds of pages. For example, we manage several sites that have evolved painlessly over the years from old-style 'flat' html pages through Mambo to the latest versions of Joomla, including one that has several hundred pages organised into different product and news categories.
What about e-Commerce?
Where e-commerce is concerned, both have good options available - in Wordpress, the 'go to' plugin is WooCommerce, which is a very fully featured e-commerce solution. There are a number of options for Joomla, Virtuemart is one of the most popular and long established, as are PhocaCart and HikaShop.
Again, with both there are good points and bad points for these. WooCommerce stores products as a type of post in the Wordpress core database, which in some ways seems logical, but in a purely technical way also seems intuitively wrong. But it is quite user friendly, and there is little doubt it works and works well, particularly for smaller online shops.
The Joomla options store all their data separately from the Joomla core, apart from user data, which can take full advantage of the Joomla built-in ACL. Our first choices would be either PhocaCart or Virtuemart. Both are hugely powerful and very highly featured and we have recently deployed sites with both systems. To give an idea of the power and scale of these systems, the largest site we built and manage now has over half a million products!
Themes, templates, and page builders
With CMS systems, one of the great advantages is the separation of content (the text and images) and style (layout and appearance). This makes it relatively easy to update the style of a site without having to update your content. To this end both Joomla and Wordpress use templates (known as themes in Wordpress) to set the style, loading the content into the template as the page is generated.
One of the first choices you are faced with is whether to use a pre-built template or theme, or create your own design. If you are technically competent and plan on creating your own site, then choosing one of the pre-built templates and customising the appearance to suit is a good option, but it can take a bit longer than you might expect to customise it to get it looking as you would like.
A web developer can help here - many will use standard themes and adapt them to suit your requirement, but there is a catch to both of the above. Pre-built themes or templates have to try to be 'all things to all men'. That can make them overly complex, making them more complicated to customise and manage, and less adaptable. There can also be an increase in the server overhead, extending page loading times, and impacting on user experience and, importantly, the search engines.
Although we have a few of our own standard templates, we have generally found that building a template or theme from scratch is the better option for anything more than a simple site - for a similar cost, the result can be a more lightweight and faster loading template that is better able to reflect your brand.
Another thing to watch for are 'page builders' or 'frameworks'. These are common add-ins to both Joomla and Wordpress, and many themes and templates incorporate them as part of their package.
A page builder extends the capability of the CMS to make it easier to create custom page layouts from within the CMS. RS PageBuilder is a good example of this for Joomla, and in Wordpress, the WP Bakery or Divi themes.
Now here's the thing to watch with page builders: they can break one of the major advantages of CMS powered websites by severely curtailing the ability to upgrade your website layout. They effectively create custom page layouts which can leave you locked in to a particular theme or template if used too extensively. This might be fine for relatively small sites, but can become a major issue for larger sites. In general we would recommend avoiding page builders, instead using smarter layout designs and core components, modules or widgets to achieve a similar result without impacting on future updates.
In conclusion, sorry if you were looking for a definitive 'this is the best' answer, as it's not that simple. For anyone wanting a smaller site with a blog, then Wordpress is the obvious choice, but if you don't particularly need a blog or are expecting your site to grow with non-blog content, then we would recommend Joomla as your first choice.