Home menu problem with Joom!Fish and sh404SEF

If you use Joom!Fish to create a multi-language Joomla site and use sh404SEF to manage your SEF URL's you might have seen this problem:

When you are in one non-default language and click on the Home menu item (the default menu item, which should lead you to the default site page on that language) you are arriving on the default home page - in the default language, and not the default page in your active language!

the problem is old, and is fixed by the JomFish team by releasing a multi-language-aware mainmenu module. But what if you can't do that?

The problem can be solved with a little hack.

Open menus/mod_mainmenu/helper.php. Locate this string:

$tmp->url = JURI::base();

Replace it with this one:

$tmp->url = str_replace(array($tmp->route.'/', $tmp->route), '', JRoute::_( $tmp->url ));
Be aware, that this is a core hack! Do it on your own risk. And don't forget, that the fix will be lost as you upgrade Joomla - you might need to re-make it after a core update!