Converting A Previous Joomla! Version Template

From Joomla! Documentation

Other languages:
Deutsch • ‎English • ‎Nederlands • ‎español • ‎français • ‎български • ‎русский

If you any tips for users based on your experience please feel free to edit this page and add them to the list

Converting your template to work with the Joomla 3 release involves a number of steps. Because Joomla 3 uses the Twitter Bootstrap framework many class and id names have changed. Also to take advantage of Bootstrap you will want to include certain files.

This is not going to give you the results you would get by fully incorporating JUI into a template, but it will do as a work around and give some time to transition or fully go in a different direction if you prefer not to incorporate it at all.

In some cases where you have heavily styled a layout or relied on MooTools features you may want to use overrides with the 2.5 layouts as a temporary bridge.


Class names[edit]

Joomla! 2.5 Joomla! 3.x notes
menu nav
pagnav pager
actions dropdown-menu This will give you text but no icons


Add this code before including the head to load Bootstrap.

JHtml:: ('bootstrap.framework');
JHtml:: ('bootstrap.loadCss', true, $this->direction); ?>

Editor views[edit]

The front end editor views use tabs to separate editing areas and options. If you don't wish to use these you will need to make an override that does not include this block:

<ul class="nav nav-tabs">
    <li class="active"><a href="#editor" data-toggle="tab"><?php echo JText::_('JEDITOR') ?></a></li>
    <?php if ($params->get('show_urls_images_frontend')) : ?>
    <li><a href="#images" data-toggle="tab"><?php echo JText::_('COM_CONTENT_IMAGES_AND_URLS') ?></a></li>
    <?php endif; ?>
    <li><a href="#publishing" data-toggle="tab"><?php echo JText::_('COM_CONTENT_PUBLISHING') ?></a></li>
    <li><a href="#language" data-toggle="tab"><?php echo JText::_('JFIELD_LANGUAGE_LABEL') ?></a></li>
    <li><a href="#metadata" data-toggle="tab"><?php echo JText::_('COM_CONTENT_METADATA') ?></a></li>