TYPO3: TYPO3 vs. Joomla – The definite answer

by 曾经沧海
602 阅读

原文地址:http://www.essentialdots.com/int_en/blog/typo3_typo3_vs_joomla_the_definite_answer/index.html

A lot of clients have asked us why is TYPO3 better than Joomla, as these two both aim for the title of the best PHP open-source CMS. If you try to "google" the answer you can mostly find just Joomla developers writing that TYPO3 is indeed more advanced but way more complex to set up – but without detailed comparison.

As we don’t offer any services on Joomla, I have invested some time in researching the differences between these two. For this article I have used information provided on the CMS Matrix web site as well as the list of Joomla flaws stated in the book Professional Joomla! by Dan Rahmel.

Document version control

Joomla completely lacks document version control. TYPO3 on other hand has great version control – you can control absolutely every record and content element in the page tree – you can undo changes, browse history etc. When creating custom record type, adding version control features is as easy as clicking on the "Enable versioning" check box in the Kickstarter.

Workflow feature

Joomla completely lacks workflow as well. For example, if you have many editors who write articles, it won’t be possible to allow chief editor to make decision what will be published and what will be returned for revision.

TYPO3 has great feature called "Task center" where you can define tasks for each user and workflow. For example:

  • a chief editor can create a task for editor to create a news article
  • once editor writes the article it passes it for review
  • once the chief editor reviews the article he can publish the article to the news archive, censor the article or he can return it to the editor for revision.

While the workflow system in TYPO3 certainly needs improvement, what is currently present is a great advantage over Joomla.

Import/Export of the content

Joomla lacks export functionality. In order to transfer content from one website to another you would have to dig into MySQL tables directly and manually copy all the files using FTP.

TYPO3 has built-in import/export functionality. You can export and import content using TYPO3’s native .t3d archives. These archives can contain both records and content elements from the database and files stored on a server’s file system. While this feature can be a little tricky on a complex web sites when you try to use it on just one part of the page tree, it certainly helps a lot in manipulating data and is very easy to use in most of the cases.

Security and authentication features

Joomla has only eight predefined user groups which you cannot change (though there is an extension which can extend this functionality). Furthermore, you cannot set security level with high level of granularity for users groups in Joomla – for example, you cannot specify that an user can change only one type of records in certain categories.

Also, Joomla lacks Kerberos, NIS, NTLM and SMB authentication.

In this field, TYPO3 has great advantage over Joomla:

  • you can create unlimited number of front-end and back-end user groups
  • user groups can be nested
  • for each front-end group you can define what content element it can access. For example, a single page can have different output based on a group logged-in user belongs to
  • for each back-end user group you can define what folders/pages/extensions users can access
  • there is a support for Kerberos, NIS, NTLM and SMB authentication through additional extension. Furthermore, you can easily create any other custom authentication.

Load balancing and replication

Load balancing is something that both Joomla and TYPO3 lack out of the box. Generic replication of file system and MySQL databases can be done on the  absolutely same way both these systems.

A common way to deploying high-speed TYPO3 web site is by creating static HTML files and serve them on a load-balanced web servers, and use private web server for content editing. There is noting faster than this when serving web sites where no interaction with the users is needed, but in cases when users can collaborate on the web sites, it makes this procedure very tricky.

One more very powerful option is included in the core installation of TYPO3 (but not documented for now) – ability to cache SQL results on distributed cache servers using memcached. This technique is used by many high-traffic web sites (FaceBook, Wikipedia, SourceForge and Slashdot to name the few). In order to use distributed caching in TYPO3 you would have to setup your database connection using the dbal and adodb system extension and of course install memcached on at least one server.

Given all that, I would also dare to grade TYPO3 much higher in terms of load-balancing.

Back-end editing capabilities

A subjective impression of anyone who is used to work with TYPO3 BE is that Joomla BE is very simple and feature poor. In TYPO3 all records and content elements are organized in very structural way in a page tree which consists out of pages and folders. I have found the Joomla BE to be not structurally organized and very limited in many situations.

Conclusion

These are just comparisons of some important features which Joomla lacks. I haven’t had time to dig more into comparing features which already exist in both systems, but the outcome of that is very predictable. Joomla is a very simplified CMS which can accommodate only needs of very small web-sites and organizations. For everybody else, I would recommend going for TYPO3 – the advantages are enormous and even if on the first look you might find that you don’t need all the functionalities TYPO3 has, it is just a matter of time when you will change your mind. The transition will be then more painful and expensive then choosing TYPO3 at start.

DISCLAIMER: Essential Dots is not specialized in development of Joomla web sites. Please take this comparison only as our subjective view of these two systems.

发表评论