SH404SEF is probably the best known full SEO extension for Joomla. It is a commercial extension (Siteground users can use a Lite version for free) which has been around for a long time. It is available for all Joomla versions. It was an Editor's choice on the JED. It has a lot of potential to optimize your site, but for less experienced site administrators, the back-end can be a bit overwhelming. Also, with incorrect use of your settings and parameters, your SEO efforts might have an opposite effect, so be sure to know what you are doing.
Beside the SEO configuration, the extension also comes with some additional features:
- Google Analytics dashboard built in
- Social sharing options included
- Optional security features to block spammers and hackers
These additional features may be usefull, but you can leave them switched off. I will not discuss these in this article.
The main feature that SH404SEF is built for is to create nice-looking readable (SEF) URL's, avoiding duplicate content and rerouting all non-SEF URL's to the SEF ones trough a 301-redirect. Currently Joomla is quite capable of creating it's own SEF URL's, so that feature may not be the utmost important feature anymore, but duplicate URL's remains an issue that SH404SEF is quite good at managing.
One thing that you should very much be aware of is that the extension will most likely build different URL's then core Joomla, so do not just activate the extension on a live site unless you know what you are doing! Joomla builds URL's based on how you link the articles to menu-items, which can lead to different routes (and URL's) to the same article. SH404SEF takes the category / article structure as a base, so that, no matter how you build your menu's, the final destination is a unique URL.
Another feature to treat carefully is option to Purge URL's. Only do this if you know what you are doing, or if you are testing your site. On a live site, set your configuration and URL's and then leave the configuration!
Configuration of SH404SEF
After downloading and installing it through the Extension Manager, you can reach the control panel through Components >> SH404SEF:
As soon as you set "Enable URL Optimization" to Yes, SH404SEF takes control of your URL's. Therefor it is best to make sure all your settings are correct. Out of the box, most settings should be fine, but you can finetune them all, so it is worth going through all of them. On the home screen, the "Rewriting mode" is an important setting to look into it. If you use it, it will use the .htaccess file, and removes the index.php from your URL's.
You should also go through the options under the "Configuration" button. If you set these parameters right, you should preferably never touch them again. There are too many parameter to discuss them all, but some of the possibilities rae:
- Force URL's to lowercase
- Force either www or non-www (if used, make sure that plugin "System - Cache" is set as last, or it may not work)
- Set a suffix for your URL's. Default is .html, but this does not make sense, so I always remove this.
- Create short-URL's as an alias for long ones. Unless needed, switch it off.
- Force non-SEF to SEF or not
- Use title or alias for URL's
- Include category structure in URL's or not and if set, how many levels deep
- Some settings for page-titles: with or without site-name or any other prefix/suffix
- Set Canonical URL's
- Change multiple H1's into H2
- Activate mobile templates
And there many more, some of which are for real experts. Also you can set parameters for many extensions, like K2, Kunena, etc.
As said, try to set it correct once, activate URL management and never touch it. Still, if you screw up, and you must really re-create your URL's based upon correct settings, you can purge all URL's and recreate them. Best is to do this on a local copy of your site.
After activating the extension, as soon as someone enters the front-end of the site for the first time, all URL's will be created, and you can view them form the URL manager view:
This is the view you will be using most probably. It will tell you the URL that has been created, which non-SEF URL corresponds to the record, whether meta-data has been entered for the URL and whether the record has multiple aliases. Also, you can access each individual URL and change it's properties. You can even update the URL itself (which will leave an alias for the previous one), plus meta-data and aliases and social parameters:
From the URL manager you can update your meta-data, but this is even easier from the Title and metas manager:
This screen allows you to see and update all your meta-data from a single view. Very handy to see if your metadata is there. Also you will see indicators about whether you are using the correct number of characters in your titles and descriptions. What is nice is that you also see these indicators if you are in the core Joomla view to update your article.
Finally, what is extremely usefull is the 404 manager. All URL-requests that end up in a Page-not-found 404 error are logged and can be viewed from here. You can then very easily set a redirect to the correct URL, SH404SEF will suggest a new URL, based on whether or not it can find a URL that resembes the request.
If you want to know more: my Ebook: Joomla 3.5 SEO & Performance contains a lot more information on this.
As an alternative to SH404SEF, MijoSEF could be a competitor for similar functionality.
Updates in version 4.5.0
Version 4.5.0, released in July 2015 had a few very nice additions.:
- It now inserts your sitename in JSON format so that your configured sitename is now shown in microdata breadcrumb trails instead of the URL (see here for an explanation)
- You can also set an option so that a searchbar is displayed within the Google results for your site (see the webmaster documentation for an explanation)
- Finally, SH404SEF was already very good in helping you to manually redirect 404-errors. Now it also has the option to do so automatically, forwarding the requested URL to the most corresponsing correct URL