Tuesday, 19 August 2014

To Upgrade from Joomla 2.5 to Joomla 3.x

Please follow steps to upgrade your Joomla 2.5.x website to Joomla 3.x (Tested upto version 3.3.3)
  1. Create a backup
    1. 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
  3. Check your system for Joomla 3 compatibility
  4. Check your extensions for Joomla 3 compatibility
  5. Create a test site
    1. 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
    1. Go to Components, then Joomla! Update 
    2. Click the Options button
    3. Change the Update Server to "Short Term Support"
    4. Click Save & Close
  7. 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).
    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.

However, before that if you find the "Joomla Update" is missing in from Admin Menu "Component" Or If Joomla Update does not shows as an installed component the menuitem could be wrong. Run this SQL statement:
UPDATE #__menu
SET component_id =
  (SELECT extension_id FROM #__extensions WHERE name = "com_joomlaupdate")
WHERE title = "com_joomlaupdate"

It should update 1 row, if not use the Discover function and install it as a component.
If Joomla Update shows as an installed component but is not in the Admin Menu under Components, you are missing the entry in the database table #__menu.

INSERT INTO `#__menu` (`menutype`, `title`, `alias`, `note`, `path`, `link`, `type`, `published`, `parent_id`, `level`, `component_id`, `ordering`, `checked_out`, `checked_out_time`, `browserNav`, `access`, `img`, `template_style_id`, `params`, `lft`, `rgt`, `home`, `language`, `client_id`) 
VALUES ('menu', 'com_joomlaupdate', 'Joomla! Update', '', 'Joomla! Update', 'index.php?option=com_joomlaupdate', 'component', 0, 1, 1, (SELECT extension_id FROM #__extensions WHERE `name` = 'com_joomlaupdate'), 0, 0, '0000-00-00 00:00:00', 0, 0, 'class:joomlaupdate', 0, '', 41, 42, 0, '*', 1);

Replace the "#_" of #__menu and #__extensions with the prefix of your database table (System >> Global Configuration >> Server >> Database Tables Prefix).
Example: vy2bp_menu and vy2bp_extensions (only one underline)

Reference: Source 

No comments:

Post a Comment

Please post any queries and comments here.