J3.x

Difference between revisions of "Converting A Previous Joomla! Version Template"

From Joomla! Documentation

m (version/tutor template instead, additional category)
(Remove needs review. Page largely not relevant anymore)
 
(23 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Version/tutor|3.0}}
+
<noinclude><languages /></noinclude>
{{incomplete}}
 
  
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.
+
{{Version/tutor|3.x}}
  
 +
''If you any tips for users based on your experience please feel free to edit this page and add them to the list''
 +
 +
<translate>
 +
<!--T:1-->
 +
Converting your template to work with the Joomla 3 release involves a number of steps.  Because Joomla 3 uses the [http://twitter.github.com/bootstrap/ Twitter Bootstrap framework] many class and id names have changed. Also to take advantage of Bootstrap you will want to include certain files.
 +
</translate>
 +
 +
<translate>
 +
<!--T:2-->
 
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.
 
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.
 +
</translate>
  
 +
<translate>
 +
<!--T:3-->
 
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.
 
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.
 +
</translate>
  
===Class names===
+
<translate>
 +
== HTML == <!--T:4-->
 +
 
 +
===Class names=== <!--T:5-->
 +
</translate>
  
 
{| class="wikitable"
 
{| class="wikitable"
! 2.5
+
! Joomla! 2.5
! 3
+
! Joomla! 3.x
 
! notes
 
! notes
 
|-  
 
|-  
Line 25: Line 41:
 
| actions
 
| actions
 
| dropdown-menu
 
| dropdown-menu
| This will give you text but no icons
+
| <translate><!--T:6-->
 +
This will give you text but no icons</translate>
 
|}
 
|}
  
===Index.php===
 
Add this code before including the head.
 
 
<source lang="html4strict">
 
<head>
 
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
 
    <script src="../media/jui/js/jquery.js"></script>
 
    <script src="../media/jui/js/bootstrap.min.js"></script>
 
    <script src="../media/jui/js/chosen.jquery.min.js"></script>
 
    <script type="text/javascript">
 
      jQuery.noConflict();
 
    </script>
 
</source>
 
  
Add this code after including your template.css
+
<translate>
 +
===Index.php=== <!--T:14-->
 +
Add this code before including the head to load Bootstrap.
 +
</translate>
  
 
<source lang="php">
 
<source lang="php">
// If Right-to-Left
+
JHtml:: ('bootstrap.framework');
if ($this->direction == 'rtl') :
+
JHtml:: ('bootstrap.loadCss', true, $this->direction); ?>
    $doc->addStyleSheet('../media/jui/css/bootstrap-rtl.css');
 
endif;
 
 
 
// Load specific language related CSS
 
$file = 'language/' . $lang->getTag() . '/' . $lang->getTag() . '.css';
 
if (JFile::exists($file)) :
 
    $doc->addStyleSheet($file);
 
endif;
 
 
 
$doc->addStyleSheet('../media/jui/css/chosen.css');
 
 
</source>
 
</source>
  
===Editor views===
+
<translate>
 +
===Editor views=== <!--T:15-->
 +
</translate>
  
 +
<translate>
 +
<!--T:16-->
 
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:
 
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:
 +
</translate>
 +
 
<source lang="html4strict">
 
<source lang="html4strict">
 
<ul class="nav nav-tabs">
 
<ul class="nav nav-tabs">
Line 73: Line 76:
 
</ul>
 
</ul>
 
</source>
 
</source>
<noinclude>[[Category:Template Development]][[Category:Tutorials]]</noinclude>
+
 
 +
<noinclude>
 +
<translate>
 +
<!--T:17-->
 +
[[Category:Template Development]]
 +
[[Category:Tutorials]]
 +
</translate>
 +
</noinclude>

Latest revision as of 06:44, 30 March 2020

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.

HTML[edit]

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


Index.php[edit]

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>
</ul>