Joomla Search Engine Optimization Tips for Webmasters

Joomla is one of the most commonly used CMS (content management systems) for websites. This is a short SEO guide for Joomla webmasters and users that explains how to deal with Joomla SEO problems and implement easy solutions.

Bear in mind that this tutorial focuses on the onsite optimization aspects of Joomla. It is important that you have an administrator login privilege. This means you need to be able to log in as administrator to your Joomla website before you can implement the changes recommended in this tutorial.

The suggestions in this article can be implemented whether your website is in development (still using local host) or in the production stage (at your hosting server).

Fixing the Joomla Front Title tag problem

The default Joomla home page uses “Welcome to Front page.” Ideally, you need your home page title tag to be as accurate and descriptive as possible.

Below are the steps you need to take to correct this problem:

  1. Log in as administrator to your Joomla website.
  2. Go to Content ==> Main Menu.
  3. Click the ”Home” link.
  4. On your right, find “Parameters (System).” Expand it.
  5. Replace the traditional “Welcome to Frontpage” title with your preferred home page title tag for your Joomla website.
  6. Click “Apply.”
  7. Click “Save.”
  8. Clear all browser cache and view your Joomla website. The title tag on the home page should now be changed to your assigned title tag.

Assigning SEO Friendly URLs in Joomla

This suggestion will work best if your Joomla website is still in the development stage (this means the website files are still on your local computer and not yet uploaded to a web hosting server), and still not indexed by search engines.

If you change the URLs after Google indexes thousands of your old URLs, it can take a lot of time for Google to reflect these changes, and can cause your present rankings and existing traffic level to drop. 

To get the most out of SEO friendly URLs in Joomla, it is recommended that your Joomla website be powered by an Apache web server. This will allow you to use .htaccess and execute mod rewrite rules.

The following steps will enable SEO friendly URLs in Joomla; they are applicable only to those using Apache web servers.

  1. You need to visit your website’s root directory (either using an FTP client) and find htaccess.txt. If you can find this file, rename it to .htaccess. If you cannot find htaccess.txt, then proceed to step 2 (make sure, though, that you have .htaccess in your website root directory).
  2. Log in in as administrator to your Joomla website. 
  3. Go to Site ==> Global Configuration.
  4. Under SEO Settings, change all the parameters below to “YES.”
    • Search Engine Friendly URLs
    • Use Apache Mod_Rewrite
    • Add suffix to URLs

So it will look like the screen shot below:

5. Clear your browser cache, and then try visiting your Joomla pages. You will notice that the URL will be rewritten, and looks clean/SEO friendly.

Note: If you are making these changes in the localhost, and then you are uploading the website files to your hosting server, do NOT forget to edit “configuration.php” (can be found in your Joomla website root directory) and change the following line from:

var $live_site = ”;

to this:

var $live_site = ‘http://www.thisisyourfinaljoomladomain.com’;

Enable internal linking on your Joomla article titles

By default, Joomla’s front page lists your articles, for which the title is NOT hyper linked to the exact post URLs.

To get the benefit of having the targeted keywords in the anchor text, you need to change the post/article titles into hyperlinks.

To do this, follow the steps below:

  1. Log in as administrator.
  2. Go to Content ==> Article Manager.
  3. Find “Parameters” and click it.
  4. Find the “Title Linkable” option and change it from No to Yes.
  5. Click Save/Apply.
  6. Go to Menus ==> Main Menu.
  7. Click the “Home” link.
  8. Expand “Parameters (Component),” which can be found to your right.
  9. Look for “Title Linkable” and change it to “Use Global.”
  10. Click “Apply” and then “Save.”
  11. Clear your browser cache, and then try visiting your Joomla home page. You will notice that the title tags of your articles as listed in your home page have changed into hyperlinks.

These internal links can help with the indexing of your articles, especially if your Joomla website features a lot of indexable content.

When you visit your website robots.txt at, for instance,  www.yourjoomlawebsite.com/robots.txt; you will find out that Joomla has added robots.txt by default:

User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /components/
Disallow: /images/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/

However, the optimal robots.txt settings ensure that duplicate content URLs are blocked from being crawled and indexed. So, if all of your URLs are rewritten and converted to be search engine friendly, you should disallow indexing/crawling of query strings:

# Block all query strings
Disallow: /*?

Other issues of using the default robots.txt crop up when your Joomla is installed in your web server as a sub-directory or a folder with respect to the main website, for example, if www.example.com/joomla/ is the front page URL for your Joomla installation.

If you have this website structure, then you should also adjust the above robots.txt to reflect the actual Joomla folder path:

User-agent: *
Disallow: /joomla/administrator/
Disallow: /joomla/cache/
Disallow: /joomla/components/
Disallow: /joomla/images/
Disallow: /joomla/includes/
Disallow: /joomla/installation/
Disallow: /joomla/language/
Disallow: /joomla/libraries/
Disallow: /joomla/media/
Disallow: /joomla/modules/
Disallow: /joomla/plugins/
Disallow: /joomla/templates/
Disallow: /joomla/tmp/
Disallow: /joomla/xmlrpc/
# Block all query strings
Disallow: /*?

Of course, your robots.txt should reside on the server root directory, and can be found in this URL only: www.example.com/robots.txt

Dealing with Meta Description and Meta Keyword

You can completely ignore meta descriptions and meta keywords in Google search engine optimization; these meta tags are useless and do not contribute any value.

However, the default Joomla installation globally assigns default meta descriptions and meta keywords, such as those shown below (can be seen in all pages of HTML source code):

<meta name="keywords" content="joomla, Joomla" />
<meta name="description" content="Joomla! – the dynamic portal engine and content management system" />


You need to remove these default global meta descriptions and meta keywords from your Joomla administration panel. To do this:

1. Log in as administrator.

2. Go to Site ==> Global Configuration.

3. Under “Metadata Settings,” remove the value of “Global Site Meta Description” and “Global Site Meta Keywords,” so that it will look empty.

Here is a screen shot after this change:

4. Click “Apply.”

5. Click “Save.”

What will happen is that the meta description and meta keyword in the source code will change to:

<meta name="keywords" content="" />
<meta name="description" content="" />


Of course, meta keywords are not used in SEO, and it’s up to Google to pick up related snippets in your content (for the description that will be used as snippets on the search engine results page).

Canonical Issues with Index.php

Your Joomla front page URLs (namely http://www.example.com/ and http://www.example.com/index.php) both exist and are accessible by search engine bots. To canonicalize your front page, you can do either of the following:

Option one: When search engine bots visit http://www.example.com/index.php, you can return the canonical version in  the <head> tag using the link rel canonical technique: http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html

So in the source code of the index.php version, you will see this piece of link rel canonical code:

<link rel="canonical" href="http://www.example.com/" />

Option two: If you are using Apache server for your Joomla website, you can use the .htaccess technique to 301 redirect index.php to the root front page URL.

You can read more details about this technique here:  http://blog.joomla.in/joomla-seo/redirecting-index-php-to-root-in-joomla-1-5

Do not forget to back up your old .htaccess file.

Use of Logo Image alt text and Link

It would be best if the logo image uses an accurate and descriptive alt text relating to your optimized keywords on the front page.

It is also important to make the logo an image link pointing to your front page, and not somewhere else. This should appear consistent on all of your Joomla pages.

To accomplish this, do the following:

1. Open up your template file controlling the front page source code (index.php in most cases, and residing in your template folder). Find the following code (of course, this may not be exactly the same as your template, as you will be using a different Joomla template):

<div class="span-19" id="header">
<img src="<?php echo $this->baseurl ?>/templates/<?php echo $this->template; ?>/images/hd.jpg" alt="header">
</div>

2. Suppose that the front page has been optimized for these terms: Scuba Diving Training Agency. To make the above img tag include the targeted keywords as the alt text, as well as converting it to an image link:

<div class="span-19" id="header">
<a href="http://www.example.com/"><img src="<?php echo $this->baseurl ?>/templates/<?php echo $this->template; ?>/images/hd.jpg" alt="Scuba diving training agency"></a>
</div>

Do the same for your Joomla website template. The link should point to the canonical front page URL, which in the example above is: http://www.example.com/

Google+ Comments

Google+ Comments