Skip to main content

Use A Canonical URL, With Page URL Conditionals

Not all blog owners can successfully add a conditional display of a template object, to their blog.

Some owners carefully copy the conditional code that I provide, add it to their blogs - and it does not work (for them). In some cases, it may work, for me, when I check their work.

Conditional code, that involves people in countries subject to the country specific domain redirect, won't always be comparing against "blogspot.com". People in the UK may see their blog as "blogspot.co.uk", for instance.

People in the USA, right now, will always see BlogSpot blogs, as "blogspot.com".

This blog, and other blogs published to custom domains, will always be viewed under their domain URLs - so there is no worry about country specific domain redirect.

How do you compare a blog URL, with country specific domain redirects in use?

But what of blogs published to "blogspot.com", outside the USA? How do they conditionally display objects, with the conditional URL varying according to the country specific code of each reader?

When you do a URL comparison, to conditionally display a template object - and the blog is published to "blogspot.com" - check against the canonical URL.

Use the canonical URL, for conditional comparisons in BlogSpot blogs.

Since your blog could be read by readers in any country, if your blog is published to "blogspot.com", you will want to base any URL comparison against the Canonical URL.
  • Compare "data:blog.canonicalUrl" - not "data:blog.url".
  • Compare against the URL, ending in "blogspot.com".

Your readers could be in any country - either the same as you, and subject to your country local domain - if one applies. Or, they could be different from you, and subject to a different country local domain - again, if one applies.

<b:if cond='data:blog.canonicalUrl != "http://mypersonalblog.blogspot.com"'> <style> #Text1 {display: none !important;} </style> </b:if>

or possibly

<b:if cond='data:blog.canonicalUrl != data:blog.homepageUrl'> <style> #Text1 {display: none !important;} </style> </b:if>




Just avoid using

<b:if cond='data:blog.url != "http://mypersonalblog.blogspot.com"'> <style> #Text1 {display: none !important;} </style> </b:if>

and

<b:if cond='data:blog.url != data:blog.homepageUrl'> <style> #Text1 {display: none !important;} </style> </b:if>

This way, everybody in every different country can see the gadgets only when necessary, as you design. And maybe, you can check your blog using a service like GeoPeeker.

---

Blogger blog owners, in some countries outside the USA, occasionally observe that they cannot conditionally display template objects, in BlogSpot published blogs, as people in the USA can do.

Owners who live in the USA may not realise that people outside the USA may not see their blogs properly, with conditionals added. If you want your blog gadgets to display properly, in BlogSpot published blogs, use a canonical URL in the comparisons.

Comments

Popular posts from this blog

Adding A Link To Your Blog Post

Occasionally, you see a very odd, cryptic complaint I just added a link in my blog, but the link vanished! No, it wasn't your imagination.

What's The URL Of My Blog?

We see the plea for help, periodically I need the URL of my blog, so I can give it to my friends. Help! Who's buried in Grant's Tomb, after all? No Chuck, be polite. OK, OK. The title of this blog is "The Real Blogger Status", and the title of this post is "What's The URL Of My Blog?".

Embedded Comments And Main Page View

The option to display comments, embedded below the post, was made a blog option relatively recently. This was a long requested feature - and many bloggers added it to their blogs, as soon as the option was presented to us. Some blog owners like this feature so much, that they request it to be visible when the blog is opened, in main page view. I would like all comments, and the comment form, to be shown underneath the relevant post, automatically, for everyone to read without clicking on the number of comments link. And this is not how embedded comments work.