Actions

Difference between revisions of "Using a custom image in the menu bar title"

From Joomla! Documentation

m (copyedit is the standard call for needs editing, will change the switch in review to needs editing)
(Filled in missing manifest file way)
Line 1: Line 1:
{{review|copyedit|Since joomla 1.5 (if I am not wrong), there is another way to do what this article explains which is easier -> via the package xml file tag "menu", attribute "img", though how precisely or where this is explained needs to be completed by someone.}}
+
=Via manifest xml <small>since</small> {{JVer|1.5|Since Version 1.5}}=
  
 +
Make sure the image itself is going to be uploaded in your manifest file.  Now link it via the [[Manifest_files#Menu_links_and_submenus|img attribute of the administration/menu section]].
 +
 +
=Via css =
 
To use a custom image in the Menu Bar title we need an image (obviously) and a little bit of CSS.
 
To use a custom image in the Menu Bar title we need an image (obviously) and a little bit of CSS.
  

Revision as of 09:23, 3 October 2012

Via manifest xml since Since Version 1.5

Make sure the image itself is going to be uploaded in your manifest file. Now link it via the img attribute of the administration/menu section.

Via css

To use a custom image in the Menu Bar title we need an image (obviously) and a little bit of CSS.

First off, create the following folders in your administrator component (we're using a fictitious component called com_notes as the example). Then place your image in the images folder and create a new file called default.css in the css folder, like this:

com_notes
|- assets
..|- css
....|- default.css
..|- images
....|- logo.png

The code for the CSS file looks like this:

/* Toolbar */
.icon-48-notes {
    background: url(../images/logo.png) no-repeat left;
}

Next we tell the menubar handler function to use this css by the following invocation of the title method of JMenuBar:

JMenuBar::title( JText::_( 'Notes List' ), 'notes' );

Notice that value of the second argument, notes, marries with the suffix of the CSS class.

Finally we need to load the component custom CSS file. Place the following code typically near the top of admin.notes.php:

$document =& JFactory::getDocument();
$document->addStyleSheet( '/components/com_notes/assets/css/default.css' );

You can, of course, use default.css for more than just the title styling.