HREFLANG attribute add I am working on a multilingual site. I have to add HREFLANG attribute so that search engines like Google provide the proper response according to the language of the user and the region.

To implement this, I am using Alternate HREFLANG module which basically add HREFLANG attribute like this :





for all the three languages. 

But I want to add language as well as region like this:





In the description of Alternate HREFLANG module description, they mentioned that if you want to alter this attribute, you can use  hook_language_switch_links_alter() and hook_html_head_alter() these hooks.

But when I dsm these, I didn't get the HREFLANG attribute.

Can someone help me to achieve this?
I cant see what is in your "...which basically add HREFLANG attribute like this" and "But I want to add language as well as region like this."

I bet you want to replace, let's say, "en" to "en-GB" right? If so, you need to alter Drupal language ISO. Current is ISO 639, language+region is ISO 3166-1 alpha 2.

BTW for your question, you need something like this to locate the hreflang:

function YOUR_THEME_OR_MODULE_NAME_html_head_alter(&amp;$head_elements) {
  drupal_set_message('&lt;pre&gt;' . print_r($head_elements,1) . '&lt;/pre&gt;');
}


Clear cache and reload the page.

UPDATE

An easier way is by adding a custom language. E.g. visit admin/config/regional/language/add  

Expand Custom language fieldset.
Enter your desired ISO 3166-1 alpha 2 language code to language code &amp; path prefix language code.
Fill the rest (language name in English, native language name &amp; Direction) as usual.