Migrating to Joomla! from Mambo

Note: You may also migrate directly to Joomla! 1.5, however this option hasn't been as strenuously tested as the Joomla! 1.0 migration. The benefit of this method is that version of Mambo older than 4.5.2 can usually be migrated. Please keep in mind that those versions may add features not available in Joomla! 1.0 which won't be migrated properly. For Mambo 4.5.x or higher the "Migrating from 1.0.x to 1.5 Stable " guide should still apply.


The following instructions outline a few ways to migrate your existing Mambo 4.5.2 site to Joomla! 1.0.

If you need to migrate to Joomla! from an earlier version of Mambo, you will need to follow the Mambo upgrade path to at least Mambo 4.5.2 and then migrate to Joomla!

Migration or upgrading of any system is all about change management.

Before you start you should:

  • Consult with your stakeholders about the migration or change (your clients, your work {glossarbot=disable}group, etc).
  • Test the migration of a copy of your site in a sandpit that is not on your production server (if that is available to you). Get your stakeholders involved in the test plan also.
  • Backup all files, systems, and databases prior to migration.
  • Determine a time that least impacts your business for the migration. Then inform your stakeholders when the migration will occur and how long systems will be out of action.
  • Prepare a roll back plan so that in the event of a disastrous roll out, you can restore the system to a "last known stable" condition.

{glossarbot=enable}So you've got your change management plan worked out and signed-off? Good. Here is a fairly safe option for upgrading:

  • Copy the Joomla! files (e.g., via FTP) to a new directory under your web root.
  • Remove the Joomla /installation folder
  • Copy your Mambo configuration.php file to your Joomla! site. Change the $mosConfig_absolute_path and $mosConfig_live_site variables to suit the new location.
  • Copy any CUSTOM templates, components, modules, mambots and languages to the same relative locations in the new Joomla directory. The following is a list of the entities that SHOULD NOT be copied from Mambo as they are part of the Joomla core.


  • mambo_admin (administrator only)
  • mambo_admin_blue (administrator only)
  • rhuk_solarflare_ii


  • com_admin (administrator only)
  • com_banners
  • com_categories (administrator only)
  • com_checkin (administrator only)
  • com_config (administrator only)
  • com_contact
  • com_content
  • com_frontpage
  • com_installer (administrator only)
  • com_languages (administrator only)
  • com_login
  • com_mambots (administrator only)
  • com_massmail (administrator only)
  • com_media (administrator only)
  • com_menumanager (administrator only)
  • com_menus (administrator only)
  • com_messages
  • com_modules (administrator only)
  • com_newsfeeds
  • com_poll
  • com_registration
  • com_rss
  • com_search
  • com_sections (administrator only)
  • com_statistics (administrator only)
  • com_syndicate (administrator only)
  • com_templates (administrator only)
  • com_trash (administrator only)
  • com_typedcontent (administrator only)
  • com_user
  • com_users (administrator only)
  • com_weblinks
  • com_wrapper


  • mod_archive
  • mod_banners
  • mod_components (administrator only)
  • mod_fullmenu (administrator only)
  • mod_latest (administrator only)
  • mod_latestnews
  • mod_logged (administrator only)
  • mod_login
  • mod_mainmenu
  • mod_mosmsg (administrator only)
  • mod_mostread
  • mod_newsflash
  • mod_online
  • mod_pathway
  • mod_poll
  • mod_popular (administrator only)
  • mod_quickicon (administrator only)
  • mod_random_image
  • mod_related_items
  • mod_rssfeed
  • mod_search
  • mod_sections
  • mod_stats
  • mod_templatechooser
  • mod_toolbar (administrator only)
  • mod_unread (administrator only)
  • mod_whosonline
  • mod_wrapper


  • content/geshi
  • content/legacybots
  • content/moscode
  • content/mosemailcloak
  • content/mosimage
  • content/mosloadposition
  • content/mospaging
  • content/mossef
  • content/mosvote
  • editors/none
  • editors/tinymce
  • editors-xtd/mosimage.btn
  • editors-xtd/mospage.btn
  • search/categories.searchbot
  • search/contacts.searchbot
  • search/content.searchbot
  • search/newsfeeds.searchbot
  • search/sections.searchbot
  • search/weblinks.searchbot


  • english
  • Apply the patch (see below) to all your administrator templates.
  • Load the new site in your browser.

When you are satisfied that all is working well, archive your existing site and move the Joomla! directory to the location of the original site (or use web server alias, etc, there are many options here).

Database Updates

While there are no "critical" database updates that are required, we have included a script (/installation/sql/migrate_Mambo4523_to_Joomla_100.sql) that will update the default template for the administrator, and unpublish a module that relates to MamboForge.

Please note that you will need to either run the migrate sql or apply the template patch (see below) for the Administrator to work correctly (the tempalte patch no longer applies for 1.0.1).

Hardening Joomla!

Mambo and Joomla! by default emulate a PHP setting called register_globals = on. This is generally considered to be an undesirable condition in modern web application design. The preferred setting for production sites is register_globals = off. While not a cure-all, it does prevent some forms of malicious attack due to bugs or poor programming practices.

To emulate this setting in Joomla!, rename globals.php to globals.php-on and then rename globals.php-off to globals.php.

However, we make no guarantee that all custom addons will still work correctly as the author may have been relying on the fact that register_globals was set to On.

Joomla! with PHP 5 and MySQL 4.1

MySQL 4.1 requires the mysqli libraries to be used to access the database. To be able to install and use Joomla! in under this configuration, rename database.php to database.mysql.php and then rename database.mysqli.php to database.php.

Questions you might have

Can I just copy the Joomla! files over the top of my Mambo directory?
Yes, but we recommend that you try this on a copy of your file system first and remember to backup your files before you do anything.  When you do copy over your existing files, double check that the files are actually being updated and that no transfer errors occurred (eg, errors about permissions).

The site preview page is blank after I install.
Check that you have removed your installation directory. If you log out of the Administrator you will probably get a warning to this effect.


Administrator Template Patch

*Note: the instructions below no longer apply for 1.0.1 as we have included modified `mambo_admin` and `mambo_admin_blue` templates - so you can safely ignore the instructions below*

Because we have introduced output buffering in the Administrator, any existing Administator templates need to be modified slightly to correctly work in Joomla!.

Load the template's index.php file into an editor.  Find the lines that look like this:

getPath( 'admin' )) {
require $path;
} else {
echo "<img src="" alt="" border="0" />\r\n

Then replace it with this code:

<?php mosMainBody_Admin(); ?>

Save the file.

Last Updated ( Sunday, 16 November 2008 )