Google TLD searches now return searcher-local results

As of today (1st November 2017) we noticed a change in how Google is producing searching results.  We knew that this change would be affecting mobile search results (mobile first index) but today we have seen it happen on desktop.  This Google algorithm change might rock the SEO world…

What is the actual change?

I work on a range of sites around the world and often go to  to check on the rankings for websites in South Africa or  for websites in Australia and so on.

As of today the results shown, by default, do not depend on the google TLD  (.com,,,,  .de, etc) but by the location of the searcher.  Being based in the UK the results returned for a search on are UK based results.

Here is the official Google search blog post on the subject.


The impact for us is quite large.  We use various tools to monitor SERP position and keyword rankings.  These have now gone berserk as, I can only assume, the location of the searching is now dictating our website positions rather than the selected version of Google.  Rankings are dropping by 10-20% overnight because of this.    When the tools you use to produce reports and help do your job return nonsense, at least for the time being, life becomes rather awkward.

The localisation change will probably now change the amount of international traffic we received to some sites.  Often this traffic was more of a nuisance than of benefit for some projects but for others international  traffic is vital so we will have to see what happens there.   For multinational or multi-regional websites these changes could be far-reaching.

Is there a work around?

It is possible, for manual searches, to set your desired country location in the Google search settings page.  This is something of a pain if you want to keep testing from one TLD to another.

Having read this post on the google forums Thomas P.  kindly reminds us of the geo-location URL parameter gl which can be used to tell the search engines, regardless of the TLD,  on which location you would like your results based.

e.g.   do a search on  to return results for South Africa

This is a lot quicker than constantly changing your settings.

Will keep watching to see if there is much of a backlash to this.


Magento (v1.x) : Show full page action name (module_controller_action)

Sometimes, when editing a page you need to know what the full module_controller_action route is so you can modify the correct blocks in the layout files.  Here is a simple bit of code to display the full action name in the form of module_controller_action.

Continue reading Magento (v1.x) : Show full page action name (module_controller_action)

Sublime Text 3: Remove an erroneous multi-cursor (Windows)

Another quick post.  This has often driven me crazy so I was glad to have found a solution.

The problem: you are clicking away, adding a whole load of cursors to edit multiple sections of code at once (awesome!) but then you accidentally click in the wrong place…argh.

Without knowing how to deselect or remove a multi cursor you have to start all over again, this time being very slow and precise in case you do it again.

The solution: By using alt+ middle mouse button on the offending cursor you can remove it from the “selection” – doesn’t even have to be the last one! Nice.   

I have seen elsewhere that a regular alt-click or ctrl-u )soft undo) will do it but they did now work for me.

Note: the usual approach is that ctrl-something will perform an add action and alt-something will perform a remove action.

Magento: Get store address, phone number or other config information

Here is how to get the the store config information for the phone number:

<?php echo Mage::getStoreConfig(‘general/store_information/phone’);?>

And for the address:

<?php echo Mage::getStoreConfig(‘general/store_information/address’);?>

In fact you can get all sorts of interesting “config” data out using this  getStoreConfig method.

Continue reading Magento: Get store address, phone number or other config information

Centos: Making sure your web services auto start after reboot

Your server had to restart, either by design or after some bad event, and now your website doesn’t work – “connection failure”.  Looks like your important web services are not set to start automatically on boot up.  Here is what to do to get your httpd and mysqld services running on restart.

Continue reading Centos: Making sure your web services auto start after reboot

Google Share Button Does Not Validate – Not Valid HTML

So you have run your site through the Nu Html Checker  and everything is tickity-boo except the Google share button.  Bah! You get an error that looks like this:

The text content of element script was not in the required format: Expected space, tab, newline, or slash but found { instead.

If, like me, you wanted to change the language of the share button and ended up with some code that looks like this:

<script src=”” async defer>{lang: ‘en-US’}</script>

…then this will be where the problem lies.  Here is why and how to fix it.

Continue reading Google Share Button Does Not Validate – Not Valid HTML

Magento: Programmatically added products do not appear in store until you load and save them in admin.

Ok, so you have written an import script to add a whole load of products into a store but they just don’t show on the front end.  There they are in the admin but not on the front end.  Here is one possible cause. Continue reading Magento: Programmatically added products do not appear in store until you load and save them in admin.