- Lesson 1: Introduction
- Lesson 2: Warning
- Lesson 3: Preparation
- Lesson 4: Uninstall Template
- Lesson 5: The Upgrade
- Lesson 6: The Template
- Lesson 7: Cleanup
How to Upgrade from Joomla 2.5 to Joomla 3
In this tutorial we’re going show you how to update from Joomla 2.5 to Joomla 3.
Three things to note before we begin:
- Joomla 2.5 is the Long Term Support version and offers a stable platform for most sites.
- This update is currently recommended only for relatively simple sites.
- A more sophisticated update process is expected to be available for Joomla 3.1 early this year. Look for more details on that later this week.
However, for people who do want to use Joomla 3, the update process from Joomla 2.5 to 3 does work and in this tutorial, we’re going to show you how to use it.
1) Create a backup
- Make sure you create a full backup of your site. You can use our How to Backup a Joomla 2.5 Site tutorial if you need help with creating a backup.
2) Make sure everything is up-to-date
- Go to Exetensions > Extension Manager
- Make sure that all your extensions are up-to-date
- Make sure you’re running the latest version of Joomla 2.5. At the time of this writing, it’s Joomla 2.5.8.
3) Check your system for Joomla 3 compatibility
At the time of this writing, Joomla does not have a pre-upgrade check yet, however it’s an upcoming feature that will be added soon. Until then, you must check things manually.
- Go to Site, then System Information.
- Check all your settings from within this tab and compare them to the required/recommended settings at http://www.joomla.org/technical-requirements.html
- If your site meets all the requirements, you are ready to update.
4) Check your extensions for Joomla 3 compatibility
There will also be a custom extension check in the new pre-upgrade check; However, until then, you need to check with your extension developers‘ sites, documentation, and/or support as to whether the extensions are Joomla 3 compatible. This step includes your template(s) as well.
5) Create a test site
Once you’re sure that all your extensions are compatible, create another backup and a test site on the same server in a subfolder (be sure to create a copy of the database and not use the same one). You can use our Create a Joomla Test Site Using Akeeba Backup tutorial for that part.
6) Test the upgrade in the test site
- Go to Components, then Joomla! Update
- Click the Options button
- Change the Update Server to Short Term Support
- Click Save & Close
- Finally, on the test site, click the „Install the update“. If all goes well, then you can do the same steps on the live site.
- Note: if the „Install the update“ doesn’t appear right away, you may need to go to Extensions (top menu) >> Extension Manager (sub menu) >> Update (tab) >> Purge Cache (button – far right).
- Note: after upgrading, check in Extensions (top menu) >> Extension Manager (sub menu) >> Database (side menu) and make sure there are no errors. If there are some, click on fix button.
Enjoy your new Joomla 3 site!
Joomla 2.5 to 3.x Step by Step Migration
Z Joomla! Documentation
The following are step by step instructions to migrate your 2.5.x site to Joomla! 3.x. While there are hundreds of different scenarios, this will give you the basic procedure to follow. Very complex migrations will likely be a result of installed third-party extensions. You are encouraged to contact the developers of third-party extensions installed on your Joomla! site for their suggested path to migrate their extensions.
The migration from Joomla! 2.5 to 3.x is considered a mini-migration. This is because the Joomla! core extensions will upgrade with a “one-click” upgrade via the Joomla! Update component in the backend administrator side of Joomla. Many third-party extensions are a one-click upgrade too. Some are not. You need to look at each one and determine what path the extension needs to follow to get from 2.5 to 3.x. If you haven’t already, you might be interested in reading the Self Assessment and Planning for 2.5 to 3.x Migration prior to following the steps below.
Joomla! Core Extensions:
- Modules (core modules – not third-party)
- Smart Search
For very large or complex 2.5 to 3.x migrations
The one-click update will be fine and work well for many. For some larger, more complex sites, the one-click update may not be the best route. For large or very complex sites, you may want to follow instructions for a regular migration and bypass the one-click update functionality. To do this, follow the same instructions for planning 1.5 to 3.x and migrating from Joomla 1.5 to 3.x, simply substitute 2.5 for 1.5 while reading.
Step by Step
Set up a Development Location
- Take a backup of your live 2.5 site. You can use a suggested tool (see bottom of page) or you can do this manually.
- Make sure your environment meets the technical requirements for Joomla 3 before proceeding.
- Create a new database and new user to restore your 2.5 site to.
- Create a testing site or build area to work in and restore the back up copy of your 2.5 site in one of the following places:
- A subdomain.
- A subdirectory.
- A local device via WAMP, MAMP, LAMP, XAMPP.
- A new hosting account on a temporary domain in the root. (If you would like to change hosts in the process of migration).
- Restoring a site on a local device. See Installing Joomla locally and Setting up your workstation for Joomla development.
- Restoring a site with a tool listed at bottom of page. (Read the developer documentation)
- In your test location, update your Joomla! 2.5 instance to the latest maintenance release. (Currently 2.5.28).
- Make sure you have the latest database schema updated to the latest version 2.5.28 by going to: Extension Manager → Database tab. If your schema is not up to date as in the following image, click the Fix button:
- Backup again.
Assess Each Extension
- You are going to be looking at every single extension installed on your site. You will be determining if they need to be updated to the latest version or uninstalled. In Joomla! 2.5.28 you can go to Extension Manager → Update tab and click Find Updates which will add a tooltip in the Version column, under the Manage tab, giving some compatibility information from the backend. This functionality only supports extensions that update via the Extension Manager Update tab. If you have extensions installed that do not use the Joomla extension update then they need to be assessed manually as detailed below. The same goes for those extensions that have a tooltip. You will still need to check the type of package and migration path with the extension developer to verify how to upgrade/migrate.
- Go to Extension Manager → Manage tab
- Click the drop-down for Type.
- Select Package from the drop-down. Selecting Package first is recommended because if there is something you need to uninstall in a package, it will automatically uninstall the associated Modules, Plugins, or anything else in the package at one time.
- Uninstall any Packages that are no longer needed or will not be migrating to Joomla 3.
- Repeat this process of going through the Manage tab for all Types in the drop-down: Component, File, Language, Library, Module, Plugin and Template. If the Author states Joomla! Project, then leave those extensions alone. Smart Search is a Joomla core supported extension even though the Author fields are blank. For all others, make sure that you uninstall those not in use or not compatible with Joomla! 3.x.NOTE! You will not be able to uninstall any Template that is set as default. You will need to select a Core supported template like Beez or Atomic and then uninstall the template if you need to do so.
- Make a note of any versions of Packages and Components currently running that you will be keeping on your site. You can use the Third-Party Extension Inventory Worksheet or just copy/paste them into a document for reference.
- Update all extensions to the latest versions.
- Before and as you update, note if the extensions have both 2.5 & 3.x versions in the same package. If so, they will be fine to „one-click update.“ If not, and 2.5 and 3.x have different packages, you need to look at them case by case. They will normally fall into one of the following scenarios:
- The extension has separate packages but upon upgrading to 3.x, they automatically detect this and still work. Make sure the developer confirms this.
- The extension has separate packages that need to be uninstalled in 2.5 and then installed with the Joomla 3.x version once the site is migrated. An example of this might be a content plugin. It is very simple to uninstall it in 2.5 and then install it again in 3.x.
- See Template Considerations for more specific information on templates.
Going to Joomla! 3.x
Once you have either updated or uninstalled your third-party extensions so that only those compatible with Joomla! 3 remain in your installation, continue with the following steps:
- Go to System → Global Configuration → Server tab and turn Error Reporting from System Default to Maximum. Make sure to Save & Close.
- Go to Extensions → Plugin Manager and enter Remember Me into the Filter and press enter.
- Disable the Remember Me plugin by clicking the green check mark and making it a red circle.
- Take another backup.
- Recommended but not required: Fix assets. (Fixing the assets table). See below for a tool to do this in just a few clicks.
- Go to Components → Joomla Update. (It should say no updates found. If it doesn’t, update Joomla to the latest version and test. Then do another backup.) Click on the Options button at the top right corner.
- Select Short Term Support (This is the current text – it may be different in the future) from the drop-down for Update server.
- Click Save & Close.
- You will then see your Installed Joomla Version, the Latest Joomla! version and the URL for the update package.
- If the update is not showing up, go to Extension manager → Update and press Purge Cache from the toolbar. Now the update to Joomla! 3 should show up.
- Cross your fingers, make sure you turned off Remember Me and that you have a backup from just before this point.
- Click the Install the Update button.
- Watch the spinning circle go round and round and feel the anxiety building. No, just kidding. The amount of time the wheel spins is dependent on your site, Internet connection and server speed.
- If all goes well, you will get to a totally new look to the backend administrator panel.
- Click the Purge Cache button.
- Go to Extensions → Extension Manager → Database and click Fix.
- In the Extension Manager, go to Discover and see if there are any extensions to install.
- Recommended but not required: Fix assets. (Fixing the assets table). See below for a tool to do this in just a few clicks.
- Enable Remember Me from the Plugin Manager.
- Go to the frontend of your site and see if it shows up even if it’s not the right template. If so, continue. If not, see common errors during migration.
- Take a backup.
- At this point, it would be prudent to clear your browser’s cache. Some browsers, notably Firefox, will retain old version 2.5 files. That caching might prevent the operation of the Save and Save & Close buttons in the Administrator.
- Go to Content → Article Manager → Options button → Editing Layout tab and set the Save History to Yes.
- Install your new template or other extensions if you have them to install. Back up often.
- Configure them. Back up often.
- Test everything. Back up often.
- If everything works as expected, turn Error Reporting back to System Default (System → Global Configuration → Server tab). Make sure to Save & Close.
Going Live with your Joomla! 3.x Site
- When you’re ready to go live, back up your 2.5 site for the last time. Restore it in a subdirectory or subdomain if you would like to.
- Back up your Joomla! 3.x site and move or restore your Joomla! 3.x site to the root (or change nameservers if you were building on a temporary domain at a new hosting account root).
- Test again.
- Remove the Joomla! 2.5 site from the server within a couple of days unless you have edited your robots.txt file to block the search engine spiders.
- Remove all development sites you may have been working with or keep them up-to-date if they are running a current version in order to ward off hack attempts on your server.
If you had data change on the 2.5 site while you were migrating to 3.x, you will want to get that data moved over to the 3.x site before going live. You can do this manually (make sure you keep the same user IDs – go in order) or by using a transfer tool/third-party extension.