Search Engine Friendly Links

Search Engine Friendly LINKSsh404SEF

1.5 Native  |  1.0 Native

After a succession of SEF extensions for Joomla, we have settled on sh404SEF as being our preferred all-rounder.

Latest Builds for sh404SEF

Please note that in that link above you will find the latest builds... they are just that and may cause errors etc., they are not stable releases. Beware. They are useful to have in case they solve a bug fromthe current release.

Onto installing this extension...  Do so in the normal way, if your installation crashes because of slow internet or a similar reason and you find you cannot re-install because the extension is now half installed, ftp into your site, go to > administrator > components and delete the "com_sef" folder, then do the same in the components directory in the root html directory.

Once installed you need to do the following to get this extension working:

  • Turn on Joomla SEF (in 1.5 also mod_rewrite), when it tells you to go and change the htaccess file name from "htaccess.txt" to ".htaccess", do so.  You will find it in the root directory of your Joomla site.  Then verify that the frontend of your site has SEF url's which are working (this means the coded-looking url's should have changed to site item titles if Joomla 1.5.xx, or to www.yoursite.com/14/37 style if v. 1.0.xx)
    Turn on SEF in your "Global Configuration - SEO" - 1.0.xx
    Turn on SEF in your "Global Configuration - SEO Settings" - 1.5.xx
  • Go to the sh404SEF component in the administration panel
  • First thing, on the right you will notice an areas saying "click here for the extended display" - do this !
  • Then click on "sh404SEF configuration"
  • On the "main" tab, click enable and also "lowercase"  that's it there.
  • Then go to > advanced > rewriting mode... select "with htaccess"... If you don't use an htaccess file, then it is easier BUT you will get this "index.php" added early in every url.
  • We'll come back later and I will tell you how to set up the "SEO/Meta" tab
  • Save the configuration screen
  • Now your site (frontend) should be working with the new url's.  Go and have a look.
  • If you don't have an htaccess file, copy the one below.
    If you have problems !!! - if the frontend is displaying a server error then there is one thing you may have to change
    ** This line may need the hash (#) removed, or left there (read the box above it)
    #Options +FollowSymLinks
    ---------------------------------------------------------------------
    ##
    # @version $Id: htaccess.txt 9975 2008-01-30 17:02:11Z ircmaxell $
    # @package Joomla
    # @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
    # @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
    # Joomla! is Free Software
    ##


    #####################################################
    #  READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
    #
    # The line just below this section: 'Options +FollowSymLinks' may cause problems
    # with some server configurations.  It is required for use of mod_rewrite, but may already
    # be set by your server administrator in a way that dissallows changing it in
    # your .htaccess file.  If using it causes your server to error out, comment it out (add # to
    # beginning of line), reload your site in your browser and test your sef url's.  If they work,
    # it has been set by your server administrator and you do not need it set here.
    #
    #####################################################

    ##  Can be commented out if causes errors, see notes above.
    #Options +FollowSymLinks

    #
    #  mod_rewrite in use

    RewriteEngine On


    #  Uncomment following line if your webserver's URL
    #  is not directly related to physical file paths.
    #  Update Your Joomla! Directory (just / for root)

    # RewriteBase /


    ########## Begin - Joomla! core SEF Section
    #
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !^/index.php
    RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
    RewriteRule (.*) index.php
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
    #
    ########## End - Joomla! core SEF Section


    ########## Begin - Rewrite rules to block out some common exploits
    ## If you experience problems on your site block out the operations listed below
    ## This attempts to block the most common type of exploit `attempts` to Joomla!
    #
    # Block out any script trying to set a mosConfig value through the URL
    RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
    # Block out any script trying to base64_encode crap to send via URL
    RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
    # Block out any script that includes a <script> tag in URL
    RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
    # Block out any script trying to set a PHP GLOBALS variable via URL
    RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
    # Block out any script trying to modify a _REQUEST variable via URL
    RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
    # Send all blocked request to homepage with 403 Forbidden error!
    RewriteRule ^(.*)$ index.php [F,L]
    #
    ########## End - Rewrite rules to block out some common exploits
    ---------------------------------------------------------------------

    ok, that's the first step with sh404SEF, there's a lot more to see, check back here soon for control of your page titles.

    continued...
  • There is a setting on the first page of the configuration menu to have either "title" or "alias" title.
  • For control of Title, Description, Keywords, Robots and language tags, head for the meta/SEO tab.
  • Read the highlit instructions at the top, they are pretty self-explanatory.  Make sure you have a template module position as instructed in the module installation of shCustomTags. There is usually a debug position that should do the job.
  • Back to the meta/SEO tab, "activate meta management" and say "yes" to the "remove generator tag"
  • Now go to the last two fields, complete "insert before Page Title" (using your main keyword?) and "Append to Page Title" (possibly using your site name)
  • Example : Dog Training - (page title from your article + section + category***) - Dogsforhealth.com.  The only time that you want to be careful here is if this means you have your main keyword repeated too many times in the title.
  • Now go to "Meta Tags" button on your administrator control panel for sh404SEF and click the home page meta button at the top and complete it.
  • Now your site page titles will be well-optimised for SEO's.
  • Now you need to go to each separate page in Joomla! and complete the meta description and keywords.
  • *** The ONLY drawback I've found with sh404SEF is that you can turn off the section in sh404SEF's administration panel which also removes it from your new customised title, but if you also turn off the category, the url can get a bit confusing on a big site.  This means that the category name ALSO appears in the title, and as stated above, that may mean too many instances of your keyword in the title overall.