Search Marketing | Marketing de Recherche | Turko.ca

July 3, 2009

User and Meta data scenarios for International sites

Filed under: SEO — Tags: , , , — Remi @ 7:55 pm

User scenarios for International sites

For international sites, follow this table in order to define proper values for Urls, 301s, Cookies, Flags, GEO-IP and Browser language depending on the User scenario.

meta data user scenario seo

meta data user scenario seo

Highlights for User Scenarios

· Values on url dominates; than comes cookie values; last is geo-ip and browser lookup values.

· For the homepage only (www.example.com or www.example.com/fr), if no country value is set, this value should be set to the user’s country based on a Geo-IP lookup.

· Browser language detection should only available strictly for homepage url www.example.com.

· If cookie country value is set, there’s no redirection based on a GEO-Ip lookup.

· The country value should change if the user selects a different flag in the country selector or by acceding a country specific url. (i.e. /uk-en/ sets cookie country value to UK)

· Selecting a country filter on medals or athletes pages should direct the user to the country specific URL (I.e. selecting CANADA from www.example.com/olympic-medals/ should go to www.example.com/ca-en/olympic-medals

· If a country value is set and a user tries to access another country by changing the url or the country in the switcher, the country value is changed.

· The language value should change if the user selects to change their language on the website between English and French or from acceding a specific url (i.e. /ca-fr/ sets cookie language value to FR (French)

· For browser languages other than French (i.e. Chinese), redirect to EN.

· We can influence but we do not have total control on which pages Google will show in the SERPs.

· From the site’s navigation, the site must allow the possibility to go on the main site www.example.com or www.example.com/fr/ (French version) without being redirected again. In other words, the site must allow the option of setting the country cookie value to <nocountry>.

Meta data scenarios for International sites

For international sites, follow this table in order to define proper values for Canonical tag, Meta Noindex/Nofollow, Meta Country/Meta Language and GWT Geotarget depending on the Url.

meta data user scenario

meta data user scenario

Highlights for Meta data scenarios

· Country specific pages with no unique content (i.e. /ca-fr/terms-and-conditions/) should have a <meta name=”robots” content=”noindex,nofollow”> and a <link rel=”canonical” href=”http://www.example.com/terms-and-conditions/” />

· Static links pointing to country-specific pages with unique content should be integrated somewhere on the site (i.e. html and xml sitemap)

· Country specific pages with unique content must have specific values for META Titles, META Keywords and META Description.

· We can influence but we do not have total control on which pages Google will show in the SERPs.


June 22, 2009

25 SEO On Site Best Practices for Coderz (06/2009)

Filed under: SEO — Tags: , — Remi @ 6:15 pm

This grrreat post from Danny Dover at Seomoz about search engine factors in 2009 gived me the force to write this post to the developers. Mostly i am writing in french on this site but today i will write in english. Here are 25 seo on-site best practices for coderz in 2009. Let me know your thoughts on this. Bouyya !

1. Title Tag

<title>Primary Keyword - Secondary Keywords | Brand</title>. Do not allow duplicate values for the title tag.

The closer the keyword is to the front of the title tag, the higher the ranking.

2. H1, H2, H3, etc.

Put the page title into a H1 tag, subheadings into H2 and H3 and so on. This is done in order to tell the search engines the semantic of the page content.

3. Meta keywords tag

Add a <meta name=”keywords” content=””> tag in the <head> part in order to add keywords for each crawlable pages. Do not allow duplicate values for the keyword tag.

4. Meta Description tag

Add a <meta name=”description” content=””> tag in the <head> part in order to add a description value for each crawlable pages. Do not allow duplicate values for the description tag.

5. Rel=”nofollow” on <a> attribute

For external links, links to profile pages, links to cart pages and links to login pages, add a rel=nofollow attribute on the link. This is done in order to block search engines from giving link juice.

i.e. <a href=”http://www.example.com/page.html” rel=”nofollow”>.

6. Meta Noindex, nofollow

Add in the <head> part a <meta name=”robots” content=”noindex, nofollow”> tag on pages that shouldn’t be indexed by the search engines. Those pages are:

· Login pages (i.e. http://www.example.com/login.jsp)

· Profile pages (i.e. http://www.example.com/profile.jsp | http://www.example.com/editprofile.jsp)

· Cart pages (i.e. http://www.example.com/cart.jsp | http://www.example.com/checkout.jsp | http://www.example.com/confirmation.jsp)

· Temporary offer pages (i.e. http://www.example.com/offers/offer1.jsp)

· Cross nav pages (i.e. http://www.example.com/product/makeup/details.jsp?crossnav=cat | http://www.example.com/offer/offerA/makeup-product-A.jsp)

7. Meta Noindex, Follow

Add in the <head> part a <meta name=”robots” content=”noindex, follow”> tag on pages that shouldn’t be indexed by the search engines but should rank links within those pages. Those pages are:

· Pagination pages over page 1 (i.e. http://www.example.com/product.jsp?page=2 | http://www.example.com/product.jsp?page=3 | http://www.example.com/products/2/ | http://www.example.com/products/3/)

· Search pages over page 1 (i.e. http://www.example.com/search.jsp?query=makeups&page=2&order=ASC | http://www.example.com/search.jsp?query=makeups&begin=10&last=20 | http://www.example.com/search/page2/)

8. Link Rel=”canonical” tag (how to do a rel=canonical on Google Blog)

For 2 Urls having the same content, make sure to add in the <head> the following code in order to tell the search engines the proper page to rank : <link rel=”canonical” href=”http://www.example.com/originalsource.html” />

I.e. The following page Urls display the same identical content:

· http://www.example.com/product.jsp?item=mascara&category=eyevbrow

· http://www.example.com/product.jsp?item=mascara&trackingid=1234&sessionid=5678

· http://www.example.com/product.jsp?item=mascara

· http://www.example.com/product.jsp?item=mascara&sort=ASC

· http://www.example.com/products/mascara/?jsessionid=12345

· http://www.example.com/products/mascara/

We must add a <link rel=”canonical”> to specify the preferred version. So in this example, we would add for those pages this tag in the head part: <link rel=”canonical” href=”http://www.example.com/products/mascara/” />

Other I.e.

· http://www.example.com

· http://www.example.com/

· http://www.example.com/index.html

· http://www.example.com/index.jsp

· http://www.example.com/index.jsp?lang=en

Rel=canonical value: <link rel=”canonical” href=”http://www.example.com/” />

The rel=canonical tag is important to be placed on those pages:

· Other urls for homepage

· Cross nav pages

· Search pages over page 1

· Pagination pages over page 1

9. Link Rel=”alternate” tag (how to do a rel=alternate on w3)

For Multilanguage sites, add a <link rel=alternate> tag in the <head> part in order to tell the search engines where are localized the urls for foreign languages.

I.e. <HEAD>

<TITLE>The manual in English</TITLE>

<LINK title=”The manual in Dutch”

type=”text/html”

rel=”alternate”

hreflang=”de”

href=”http://someplace.com/manual/dutch.html”>

<LINK lang=”fr” title=”La documentation en Fran&ccedil;ais”

type=”text/html”

rel=”alternate”

hreflang=”fr”

href=”http://someplace.com/manual/french.html”>

</HEAD>

10. Absolute links

Instead of creating relative links <a href=“/page.html”>, always put the absolute path <a href=”http://www.domain.com/page.html”>.

11. Anchor text values

Always make sure that the anchor value of text links contains keyword-rich text.

I.e.

· <a>Eyebrow products</a> : GOOD

· <a>Click here for Eyebrow products</a> : POOR

· <a><img src=”button.gif”>Eyebrow products</a> : BAD

· <a>[more]</a> : BAD

· <a>[…]</a> : BAD

12. Flash links

Avoid using Flash links for navigation. If forced to use Flash for navigation, add related html links into the <noscript> tag.

I.e.

<script language=”javascript”>

AC_FL_RunContent(); //end AC code

</script>

<noscript>

<!– Html text content and text links here –>

</noscript>

13. Javascript links

Do not use Javascript links for navigational links to pages that we want to index/rank. Javascript links can be used for:

· Login pages

· Cart pages

· Print version pages

· Language switcher

· Country switcher

· DHTML tabs / menus (! make sure text content within DHTML is crawlable when desactivating Javascript+CSS in Firefox’s web developer toolbar.)

14. <a> title attribute

On each link pointing to an important page, add a keyword for the title attribute of the <a> that is slightly different from the value used for the anchor text. I.e. <a href=”http://www.example.com/product-makeups.html” title=”Shop Make-up products”>Makeup products</a>

15. <img> alt attribute

On each content-related image, add a keyword on the alt attribute of the <img>. I.e. <img src=”http://www.example.com/images/eyebrow-makeup-product-a.gif” alt=”Buy Product A” />

16. URL Filenames for multimedia content

Use keywords to name your multimedia files (images, videos, pdfs, etc.)

I.e.

· Image url: http://www.example.com/images/eyebrow-makeup-product-A_12345.jpg

· PDF url: http://www.example.com/pdf/eyebrow-makeup-instructions_12345.pdf

· Video url: http://www.example.com/video/eyebrow-makeup-video _12345.flv

17. Robots.txt file (see how to build a robots.txt file)

At the root of the site, add a file named robots.txt and on this file, block all non relevant directories.

I.e. http://www.example.com/robots.txt

User-agent: *

Disallow: /template/images

Disallow: /stats/

Disallow: /wp-admin/

Sitemap: http://www.example.com/sitemap.xml

Sitemap: http://www.example.com/videos/videos.xml

18. Sitemap.xml file (see how to build a sitemap.xml file and how to ping the search engines)

Create a xml sitemap at the root of the site that will contain all the site’s crawlable urls and ping the search engines in order to provide them with the site’s updates (Google, Yahoo, Bing, Ask). Xml sitemap structure should look like this:

I.e. http://www.example.com/sitemap.xml

<?xml version=”1.0″ encoding=”UTF-8″?>

<urlset xmlns=”http://www.sitemaps.org/schemas/sitemap/0.9″>

<url>

<loc>http://www.example.com/</loc>

<lastmod>2005-01-01</lastmod>

<changefreq>monthly</changefreq>

<priority>0.8</priority>

</url>

</urlset>

19. Products.xml file for Product sites (see how to build a products.xml file and how to submit the feed)

For a product site, somewhere on the site, create a xml sitemap file containing all the products. Also, this file should do a monthly submission to Google Product Base. Structure should look like this:

I.e. http://www.example.com/products/products.xml

<?xml version=”1.0″ encoding=”UTF-8″ ?>

<rdf:RDF xmlns:rdf=”http://www.w3.org/1999/02/22-rdf-syntax-ns#”

xmlns=”http://purl.org/rss/1.0/”

xmlns:g=”http://base.google.com/ns/1.0″>

<channel rdf:about=”http://www.example.com/RSS1.xml”>

<title>The name of your data feed.</title>

<description>A description of your content.</description>

<link>http://www.example.com</link>

<items>

<rdf:Seq>

<rdf:li resource=”http://www.example.com/item1-info-page.html”/>

<rdf:li resource=”http://www.example.com/item2-info-page.html”/>

</rdf:Seq>

</items>

</channel>

<item rdf:about=”http://www.example.com/item1-info-page.html”>

<title>Red wool sweater</title>

<g:brand>Acme</g:brand>

<g:condition>new</g:condition>

<description>Comfortable and soft, this sweater will keep you warm on those cold winter nights.</description>

<g:id>1</g:id>

<g:image_link>http://www.example.com/image1.jpg</g:image_link>

<link>http://www.example.com/item1-info-page.html</link>

<g:mpn>ABC123</g:mpn>

<g:price>25</g:price>

<g:product_type>Clothing &amp; Accessories &gt; Clothing &gt; Outerwear &gt; Sweaters</g:product_type>

<g:quantity>3</g:quantity>

<g:shipping>

<g:country>US</g:country>

<g:region>MA</g:region>

<g:service>Ground</g:service>

<g:price>5.95</g:price>

</g:shipping>

<g:tax>

<g:country>US</g:country>

<g:region>CA</g:region>

<g:rate>8.25</g:rate>

<g:tax_ship>y</g:tax_ship>

</g:tax>

<g:upc>0001230001230</g:upc>

<g:weight>0.1 lb</g:weight>

</item>

</rdf:RDF>

20. Videos.xml file for videos (see how to build a videos.xml file and how to submit the feed)

For a site that contains videos, somewhere on the site, create a xml sitemap file containing all the videos. Also, this file should do a monthly submission to Google. Structure should look like this:

I.e. http://www.example.com/videos/videos.xml

<urlset xmlns=”http://www.sitemaps.org/schemas/sitemap/0.9″

xmlns:video=”http://www.google.com/schemas/sitemap-video/1.1″>

<url>

<loc>http://www.example.com/videos/some_video_landing_page.html</loc>

<video:video>

<video:content_loc>http://www.example.com/video123.flv</video:content_loc>

<video:player_loc allow_embed=”yes”> http://www.example.com/videoplayer.swf?video=123

</video:player_loc>

<video:thumbnail_loc>http://www.example.com/thumbs/123.jpg</video:thumbnail_loc>

<video:title>Grilling steaks for summer</video:title>

<video:description>Get perfectly done steaks every time</video:description>

<video:rating>4.2</video:rating>

<video:view_count>12345</video:view_count>

<video:publication_date>2007-11-05T19:20:30+08:00.</video:publication_date>

<video:expiration_date>2009-11-05T19:20:30+08:00.</video:expiration_date>

<video:tag>steak</video:tag>

<video:tag>meat</video:tag>

<video:tag>summer</video:tag>

<video:category>Grilling</video:category>

<video:family_friendly>yes</video:family_friendly>

<video:expiration_date>2009-11-05T19:20:30+08:00</video:expiration_date>

<video:duration>600</video:duration>

</video:video>

</url>

</urlset>

21. Url Rewriting (What is Url rewriting)

For pages that we want to index/rank, create a url structure that doesn’t contains parameters. If possible, avoid using parameters by using keynames as primary keys.

I.e. Without IDs (BEST)

· Product detail page: http://www.example.com/product/blue-mascara/

· Product category page: http://www.example.com/category/mascara/

· Tag page: http://www.example.com/tag/mascara/

· Basic page: http://www.example.com/terms-and-conditions/

Other I.e. With IDs (OK)

· Product detail page: http://www.example.com/product/blue-mascara_12345/

· Product category page: http://www.example.com/category/mascara_12345/

· Tag page: http://www.example.com/tag/mascara_12345/

· Basic page: http://www.example.com/terms-and-conditions_12345/

Other I.e. Without Url Rewriting (BAD)

· Product detail page: http://www.example.com/productdetail.jsp?id=12345&cat=56789&cross=cat&lang=en

· Product category page: http://www.example.com/category.jsp?id=12345&order=asc&country=us

· Tag page: http://www.example.com/tag.jsp?tagname=mascara&id=12345&parent=56789

· Basic page: http://www.example.com/page.jsp?id=12345&parent=56789

22. 404 codes (how to do a 404 in JSP)

For broken pages, make sure that the broken url has a 404 code when doing a test with firefox’s live http headers. The broken page must not redirect to a /error.jsp page. The url should remain so that the search engines can know which url to identify as a deleted page.

23. 301 redirections (how to do a 301 in JSP)

All redirections on the site should have a 301 redirection code instead of a 302. Make sure that all redirections are done with a 301 code. 301 redirections should apply when:

· Renaming a product or category (i.e. http://www.example.com/products/mascara/ à http://www.example.com/products/mascaras/)

· Doing a campaign that contains vanity urls to landing pages (i.e. http://www.example.com/holiday/ à http://www.example.com/landing/holiday/)

· Deleting a product (i.e. http://www.example.com/products/old-mascara/ à http://www.example.com/category/mascara/)

· Deleting a category (i.e. http://www.example.com/category/mascara/ à http://www.example.com/category/all/)

24. User scenarios for International sites

For international sites, follow this table in order to define proper values for Urls, 301s, Cookies, Flags, GEO-IP and Browser language depending on the User scenario.

Scenario

Url

Actions

Cookies

User lands on the site for the fist time…

English User lands for first time on www.example.com and his IP address corresponds to an address from UK. Also, his browser language corresponds to English.

www.example.com/ >>> www.example.com/uk-en/

- Do a GEO-IP Lookup and a Browser Lookup in order to Redirect user from www.example.com/ to www.example.com/uk-en/

- Define cookie country value on redirection: uk

- Define cookie language value on redirection: en

- Set flag to UK

- country: uk

- language: en

English User lands for first time on www.example.com and his IP address corresponds to an address from CA. Also, his browser language corresponds to French.

www.example.com/ >>> www.example.com/ca-fr/

- Do a GEO-IP Lookup and a Browser Lookup in order to Redirect user from www.example.com/ to www.example.com/ca-fr/

- Define cookie country value on redirection: ca

- Define cookie language value on redirection: fr

- Set flag to CA

- country: ca

- language: fr

English User lands for first time on www.example.com and his IP address corresponds to an address from US. Also, his browser language corresponds to English.

www.example.com/ >>> www.example.com/us-en/

- Do a GEO-IP Lookup and a Browser Lookup in order to Redirect user from www.example.com/ to www.example.com/us-en/

- Define cookie country value on redirection: us

- Define cookie language value on redirection: en

- Set flag to US

- country: us

- language: en

English User lands for first time on www.example.com/olympic-medals/ and his IP address corresponds to an address from UK (or any other country).

www.example.com/olympic-medals/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Define cookie country value: <set to nocountry>

- Define cookie language value: en

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: en

French User lands for first time on www.example.com/fr/ and his IP address corresponds to an address from CA.

www.example.com/fr/ >>> www.example.com/ca-fr/

- Redirect from GEO-Ip Lookup

- Define cookie country value: ca

- Define cookie language value: fr

- Set flag to CA

- country: ca

- language: fr

User lands for first time on www.example.com/fr/ and his IP address corresponds to an address from CA. Browser language corresponds to English

www.example.com/fr/ >>> www.example.com/ca-fr/ *FR value in the url overwrites browser language lookup

- Redirect from GEO-Ip Lookup

- Define cookie country value: ca

- Define cookie language value: fr

- Set flag to CA

- country: ca

- language: fr

User lands for first time on www.example.com/ca-fr/olympiques-medailles/ and his IP address corresponds to an address from Canada but is browser language corresponds to English (not French)

www.example.com/ca-fr/olympiques-medailles/

*No GEO-IP redirection to CA or Language redirection to EN because it is not the homepage and url value overwrites browser lookup

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Define cookie country value: ca

- Define cookie language value: fr

- Set flag to CA

- country: ca

- language: fr

User lands on the site for the second time…

English User lands on www.example.com for the second time and his IP address corresponds to an address from UK. Also, his browser language corresponds to English. However, cookie country value is set to US and language is set to English.

www.example.com >>> www.example.com/us-en/

*Country Cookie value US overwrites value from IP lookup

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Redirect user from www.example.com/ to www.example.com/us-en/

- Define cookie country value on redirection: us

- Define cookie language value on redirection: en

- Set flag to US

- country: us

- language: en

English User lands on www.example.com for the second time and his IP address corresponds to an address from UK. Also, his browser language corresponds to English. However, cookie country value is set to US and language is set to English.

www.example.com >>> www.example.com/us-en/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Redirect user from www.example.com/ to www.example.com/us-en/

- Define cookie country value on redirection: us

- Define cookie language value on redirection: en

- Set flag to US

- country: us

- language: en

User lands on www.example.com/ca-en/ for the second time and his IP address corresponds to an address from UK (or any other country). Also, his browser language corresponds to English. His cookie country value is set to US (or any other country) and language is set to English.

www.example.com/ca-en/

- Define cookie country value: ca

- Define cookie language value: en

- Set flag to CA

- country: ca

- language: en

User lands on www.example.com/olympic-medals for the second time and his IP address corresponds to an address from UK (or any other country). Also, his browser language corresponds to English. His cookie country value is set to US and language is set to English.

www.example.com/olympic-medals/ >>> www.example.com/us-en/olympic-medals/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Redirect user from www.example.com/olympic-medals/ to www.example.com/us-en/olympic-medals/

- Define cookie country value: us

- Define cookie language value: en

- Set flag to US

- country: us

- language: en

User lands on www.example.com/olympic-medals for the second time and his IP address corresponds to an address from UK (or any other country). Also, his browser language corresponds to English. His cookie country value is set to <nocountry> and language is set to English.

www.example.com/olympic-medals/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Define cookie country value: <set to nocountry>

- Define cookie language value: en

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: en

User lands on www.example.com/ca-en/olympic-medals for the second time and his IP address corresponds to an address from UK (or any other country). Also, his browser language corresponds to English. His cookie country value is set to <nocountry> and language is set to English.

www.example.com/ca-en/olympic-medals/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Define cookie country value: ca

- Define cookie language value: en

- Set flag to CA

- country: ca

- language: en

User lands on www.example.com/fr/ for the second time and his IP address corresponds to an address from UK (or any other country). Also, his browser language corresponds to English. However, cookie country value is set to FR and language is set to French.

www.example.com/fr/ >>> www.example.com/fr-fr/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Define cookie country value: fr

- Define cookie language value: fr

- Set flag to FR

- country: fr

- language: fr

User lands on www.example.com/fr/ for the second time and his IP address corresponds to an address from UK (or any other country). Also, his browser language corresponds to French. However, cookie country value is set to <nocountry> and cookie language is set to English.

www.example.com/fr/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Define cookie country value: <set to nocountry>

- Define cookie language value: fr

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: fr

User lands on www.example.com/fr/ for the second time and his IP address corresponds to an address from UK (or any other country). Also, his browser language corresponds to English. However, cookie country value is set to <nocountry> and cookie language is set to French.

www.example.com/fr/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Define cookie country value: <set to nocountry>

- Define cookie language value: fr

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: fr

User lands on www.example.com/fr/ for the second time and his IP address corresponds to an address from UK (or any other country). Also, his browser language corresponds to English. However, cookie country value is set to <nocountry> and cookie language is set to English.

www.example.com/fr/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Define cookie country value: <set to nocountry>

- Define cookie language value: fr

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: fr

User lands on www.example.com/ for the second time and his IP address corresponds to an address from UK (or any other country). Also, his browser language corresponds to English. However, cookie country value is set to <nocountry> and cookie language is set to English.

www.example.com/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Define cookie country value: <set to nocountry>

- Define cookie language value: en

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: en

User lands on www.example.com/ for the second time and his IP address corresponds to an address from UK (or any other country). Also, his browser language corresponds to English. However, cookie country value is set to <nocountry> and cookie language is set to French.

www.example.com/ >>> www.example.com/fr/

- Do not Redirect from GEO-Ip Lookup or browser Lookup

- Redirect user from www.example.com/ to www.example.com/fr/

- Define cookie country value: <set to nocountry>

- Define cookie language value: fr

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: fr

User navigates on the site…

User is on www.example.com/ca-en/ and decides to go to the main site www.example.com because he don’t want to have country-specific info

www.example.com/ca-en/ >>> www.example.com/

- Redirect user from www.example.com/ca-en/ to www.example.com/

- Define cookie country value on redirection: <set to nocountry>

- Define cookie language value on redirection: en

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: en

French user is on www.example.com/ca-fr/ and decides to go to the main site www.example.com/fr/ because he don’t want to have country-specific info

www.example.com/ca-en/ >>> www.example.com/fr/

- Redirect user from www.example.com/ca-fr/ to www.example.com/fr/

- Define cookie country value on redirection: <set to nocountry>

- Define cookie language value on redirection: fr

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: fr

User is on www.example.com and decides to change language to French in the language switcher

www.example.com/ >>> www.example.com/fr/

- Redirect user from www.example.com/ to www.example.com/fr/

- Define cookie country value on redirection: <set to nocountry>

- Define cookie language value on redirection: fr

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: fr

User is on www.example.com/fr/ and decides to change language to English in the language switcher

www.example.com/fr/ >>> www.example.com/

- Redirect user from www.example.com/fr/ to www.example.com/

- Define cookie country value on redirection: <set to nocountry>

- Define cookie language value on redirection: en

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: en

User is on www.example.com/ and decides to change country to Canada in the country switcher.

www.example.com/ >>> www.example.com/ca-en/

- Redirect user from www.example.com/ to www.example.com/ca-en/

- Define cookie country value on redirection: ca

- Define cookie language value on redirection: en

- Set flag to CA Flag

- country: ca

- language: en

User is on www.example.com/fr/ and decides to change country to Canada in the country switcher.

www.example.com/fr/ >>> www.example.com/ca-fr/

- Redirect user from www.example.com/fr/ to www.example.com/ca-fr/

- Define cookie country value on redirection: ca

- Define cookie language value on redirection: fr

- Set flag to CA Flag

- country: ca

- language: fr

User is in the UK…

English user from UK search for keyword “olympics” in Google.co.uk.

www.example.com/uk-en/

- Define cookie country value: uk

- Define cookie language value: en

- Set flag to UK Flag

- country: uk

- language: en

French user from UK search for keyword “olympiques” in Google.co.uk.

www.example.com/uk-fr/

- Define cookie country value: uk

- Define cookie language value: fr

- Set flag to UK Flag

- country: uk

- language: fr

User is on www.example.com/uk-en/ and decides to change language to French in the language switcher.

www.example.com/uk-en/ >>> www.example.com/uk-fr/

- Redirect user from www.example.com/uk-en/ to www.example.com/uk-fr/

- Define cookie country value on redirection: uk

- Define cookie language value on redirection: fr

- Set flag to UK Flag

- country: uk

- language: fr

User is on www.example.com/uk-en/ and decides to change country to Canada in the country switcher.

www.example.com/uk-en/ >>> www.example.com/ca-en/

- Redirect user from www.example.com/uk-en/ to www.example.com/ca-en/

- Define cookie country value on redirection: ca

- Define cookie language value on redirection: en

- Set flag to CA Flag

- country: ca

- language: en

User is on www.example.com/uk-en/ and decides to go to the main site www.vancouver.com

www.example.com/uk-en/ >>> www.example.com/

- Redirect user from www.example.com/uk-en/ to www.example.com/

- Define cookie country value on redirection: <set to nocountry>

- Define cookie language value on redirection: en

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: en

French User from UK is on www.example.com/uk-fr/ and decides to go to the main site’s French version www.vancouver.com/fr/

www.example.com/uk-en/ >>> www.example.com/fr/

- Redirect user from www.example.com/uk-en/ to www.example.com/fr/

- Define cookie country value on redirection: <set to nocountry>

- Define cookie language value on redirection: fr

- Set flag to NO FLAG SELECTED

- country: <set to nocountry>

- language: fr

User receives a link from a friend

English User from UK received www.example.com/uk-en/olympic-medals/ from a friend. User has no cookie values defined.

www.example.com/uk-en/olympic-medals/

- Define cookie country value on redirection: UK

- Define cookie language value on redirection: en

- Set flag to UK

- country: UK

- language: en

English User from Canada received www.example.com/uk-en/olympic-medals/ from a friend. User has no cookie values defined.

www.example.com/uk-en/olympic-medals/

- Define cookie country value on redirection: UK

- Define cookie language value on redirection: en

- Set flag to UK

- country: UK

- language: en

English User from Canada received www.example.com/ca-fr/olympiques-medailles/ from a friend (French page). User has no cookie values defined.

www.example.com/ca-fr/olympiques-medailles/

- Define cookie country value on redirection: CA

- Define cookie language value on redirection: FR

- Set flag to CA

- country: CA

- language: FR

Highlights for User Scenarios

· Values on url dominates; than comes cookie values; last is geo-ip and browser lookup values.

· For the homepage only (www.example.com or www.example.com/fr), if no country value is set, this value should be set to the user’s country based on a Geo-IP lookup.

· Browser language detection should only available strictly for homepage url www.example.com.

· If cookie country value is set, there’s no redirection based on a GEO-Ip lookup.

· The country value should change if the user selects a different flag in the country selector or by acceding a country specific url. (i.e. /uk-en/ sets cookie country value to UK)

· Selecting a country filter on medals or athletes pages should direct the user to the country specific URL (I.e. selecting CANADA from www.example.com/olympic-medals/ should go to www.example.com/ca-en/olympic-medals

· If a country value is set and a user tries to access another country by changing the url or the country in the switcher, the country value is changed.

· The language value should change if the user selects to change their language on the website between English and French or from acceding a specific url (i.e. /ca-fr/ sets cookie language value to FR (French)

· For browser languages other than French (i.e. Chinese), redirect to EN.

· We can influence but we do not have total control on which pages Google will show in the SERPs.

· From the site’s navigation, the site must allow the possibility to go on the main site www.example.com or www.example.com/fr/ (French version) without being redirected again. In other words, the site must allow the option of setting the country cookie value to <nocountry>.

25. Meta data scenarios for International sites

For international sites, follow this table in order to define proper values for Canonical tag, Meta Noindex/Nofollow, Meta Country/Meta Language and GWT Geotarget depending on the Url.

Page specific url

Unique content ?

Canonical

Meta Noindex/Nofollow

Meta country/language

GWT GeoTarget

www.example.com

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<meta http-equiv=”content-language” content=”en”>

<meta name=”language” content=”English”>

- In GWT, associate www.example.com/ to International users

www.example.com/en/

No (301 to /)

<link rel=”canonical” href=”http://www.example.com/”>

<META NAME=”ROBOTS” CONTENT=”NOINDEX,NOFOLLOW”>

n/a

n/a

www.example.com/fr/

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<meta http-equiv=”content-language” content=”fr”>

<meta name=”language” content=”French”>

- In GWT, associate www.example.com/fr/ to International users

www.example.com/olympic-medals/

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<meta http-equiv=”content-language” content=”en”>

<meta name=”language” content=”English”>

n/a

www.example.com/fr/olympic-medals

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<meta http-equiv=”content-language” content=”fr”>

<meta name=”language” content=”French”>

n/a

www.example.com/fr-fr/

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<META NAME=”geo.country” CONTENT=”FR”>

<META NAME=”country” CONTENT=”France”>

<meta http-equiv=”content-language” content=”fr”>

<meta name=”language” content=”French”>

- In GWT, associate www.example.com/fr-fr/ to users from France

www.example.com/us-en/

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<META NAME=”geo.country” CONTENT=”EN”>

<META NAME=”country” CONTENT=”United States”>

<meta http-equiv=”content-language” content=”en”>

<meta name=”language” content=”English”>

- In GWT, associate www.example.com/us-en/ to users from United States

www.example.com/us-en/olympic-medals/

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<META NAME=”geo.country” CONTENT=”EN”>

<META NAME=”country” CONTENT=”United States”>

<meta http-equiv=”content-language” content=”en”>

<meta name=”language” content=”English”>

n/a

www.example.com/ca-en/

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<META NAME=”geo.country” CONTENT=”EN”>

<META NAME=”country” CONTENT=”Canada”>

<meta http-equiv=”content-language” content=”en”>

<meta name=”language” content=”English”>

- In GWT, associate www.example.com/us-en/ to users from Canada

www.example.com/jp-en/

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<META NAME=”geo.country” CONTENT=”JP”>

<META NAME=”country” CONTENT=”Japan”>

<meta http-equiv=”content-language” content=”en”>

<meta name=”language” content=”English”>

- In GWT, associate www.example.com/jp-en/ to users from Japan

www.example.com/ca-fr/

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<META NAME=”geo.country” CONTENT=”CA”>

<META NAME=”country” CONTENT=”Canada”>

<meta http-equiv=”content-language” content=”fr”>

<meta name=”language” content=”French”>

- In GWT, associate www.example.com/ca-fr/ to users from Canada

www.example.com/jp-jp/

No (301 to /jp-en/)

<link rel=”canonical” href=”http://www.example.com/jp-en/”>

<META NAME=”ROBOTS” CONTENT=”NOINDEX,NOFOLLOW”>

n/a

n/a

www.example.com/ca-en/olympic-athlete-john-smith/

No

<link rel=”canonical” href=”www.example.com/olympic-athlete-john-smith/”>

<META NAME=”ROBOTS” CONTENT=”NOINDEX,NOFOLLOW”>

<meta http-equiv=”content-language” content=”en”>

<meta name=”language” content=”English”>

<META NAME=”geo.country” CONTENT=”CA”>

<META NAME=”country” CONTENT=”Canada”>

n/a

www.example.com/olympic-athlete-john-smith/

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<meta http-equiv=”content-language” content=”en”>

<meta name=”language” content=”English”>

n/a

www.example.com/fr/termes-et-conditions

Yes

n/a

<META NAME=”ROBOTS” CONTENT=”INDEX,FOLLOW”>

<meta http-equiv=”content-language” content=”fr”>

<meta name=”language” content=”French”>

n/a

www.example.com/ca-fr/termes-et-conditions

No

<link rel=”canonical” href=”www.example.com/fr/termes-et-conditions”>

<META NAME=”ROBOTS” CONTENT=”NOINDEX,NOFOLLOW”>

<meta http-equiv=”content-language” content=”fr”>

<meta name=”language” content=”French”>

<META NAME=”geo.country” CONTENT=”CA”>

<META NAME=”country” CONTENT=”Canada”>

n/a

Highlights for Meta data scenarios

· Country specific pages with no unique content (i.e. /ca-fr/terms-and-conditions/) should have a <meta name=”robots” content=”noindex,nofollow”> and a <link rel=”canonical” href=”http://www.example.com/terms-and-conditions/” />

· Static links pointing to country-specific pages with unique content should be integrated somewhere on the site (i.e. html and xml sitemap)

· Country specific pages with unique content must have specific values for META Titles, META Keywords and META Description.

· We can influence but we do not have total control on which pages Google will show in the SERPs.

Im I missing something ?

June 10, 2009

SEO pour PME: 3 étapes cruciales pour indexer son site

Filed under: SEO, Tutoriels — Tags: , , , — Remi @ 9:57 am

Pour les petites entreprises, indexer sa “vitrine” web constitue une tâche importante dans le succès d’un site web. Dans mon jargon il s’agit de SEO pour PME ou SEO Petite Entreprise

SEO Petite Entreprise

Disons que tu as un bureau d’avocats à Chambly et que tu viens de te créer un site web qui contient environ 10 pages. À ce point là, pour pas trop te casser le coco, tu peux te limiter à 3 étapes à suivre pour permettre à ton site de se positionner sur Google et les autres moteurs de recherche:

#1- Te créer manuellement une liste d’environ 10 mots que les users taperaient sur Google pour arriver à ton site (i.e. Avocats Chambly, Avocats, Avocat, Avocat notaire chambly, etc.)

#2- Sur le code de ton site, dans la balise <title> de la page d’accueil, rajouter le mot clé le plus important en début de balise, suivi du nom de l’entreprise (i.e.  <title>Avocats Chambly | Cadieux Larivière Avocats</title>

#3- Va créer des liens provenant de d’autres sites vers le tiens en utilisant les mots listés en #1 comme valeur du lien (i.e. <a href=”www.clavocats.com”>Avocats Chambly</a>)

Liens externes pour PME

Ok je vous vois venir pour le #3:  “Remi, mais où diable dois-je insérer ces liens !!!” Voici une courte liste de répertoires où soumettre son site pour un site d’avocats à Chambly:

-lister ton site sur http://www.google.com/local/add/
-lister ton site là www.avocat.qc.ca/avocat/index.htm
-et là www.yellowpages.ca
-et là www.kijiji.ca
-et là www.craigslist.com
-ici ya plein de répertoires en francais : http://www.google.ca/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&q=r%C3%A9pertoire+avocat&btnG=Search&meta=
-ici ya plein de répertoires en anglais : http://www.google.ca/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=c0N&q=advocate+directory&btnG=Search&meta=
-créé toi un compte sur http://www.linkedin.com avec le mot “Avocat” dans le nom du user
-créé toi un compte sur http://www.twitter.com avec le mot “Avocat” dans le nom du user

Soumissionner son site dans les annuaires

L’idée de “soumission dans les annuaires” est de trouver des répertoires efficaces. Ceux-ci sont:

1- Des répertoires généraux (i.e. Yellowpage, Google, Msn, Yahoo, Craigslist, Kijiji, etc.)

2- Des répertoires spécifiques au thème de votre site (i.e. L’ordre des avocats, Répertoire d’avocats)

3- Des répertoires spécifiques à la location de votre site (i.e. Répertoire Chambly, Répertoire Entreprise Québec)

Bonne chance !

April 9, 2009

Changer le seo title en fonction du search query

Filed under: SEO — Tags: — Remi @ 2:10 pm

J’ai une question pour les experts du web. J’ai tombé sur une requête dont je ne comprends pas le résultat. En faisant “Nbc olympic beijing” sur Google, je vois que le site web “Nbcolympics.com” me donne le titre “NBC Olympics: Beijing 2008″. Pourtant, la valeur de la balise title est tout autre… Quelqu’un a une hypothèse sur ceci ? Voici la valeur du titre sur les différents moteurs de recherche et sur le site même.

Query (requête)

image002

Sur le site

http://www.nbcolympics.com/
<title>NBC Olympics | 2010 Vancouver Olympic Winter Games | Videos, Photos, News | Olympic Results and Schedules, Medals, TV and Online Listings | Athletes, Team News </title>

Sur Google

http://www.google.ca/search?hl=en&q=nbc+olympic+beijing&btnG=Search&meta=

image004

Sur ASK:

http://www.ask.com/web?q=nbc+olympic+beijing&search=search&qsrc=0&o=0&l=dir
image006

Sur MSN:

http://search.msn.com/results.aspx?q=nbc+olympic+beijing&FORM=MSNH11
image008

Sur YAHOO:

http://ca.search.yahoo.com/search?p=nbc+olympic+beijing&y=Search&fr=yfp-t-501&fr2=sb-top&rd=r1
image010

Comment le titre peut-il changer en fonction du query sur les moteurs de recherche  ?

February 25, 2009

Keywords: Augmenter les visites de mon site

MON SITE N’A PAS DE VISITE… SNIF SNIF.

Tu possède un site web ? Tu te demandes : comment ça que mon site ya pas de visite ?

Ne cherche plus champion. Je suis ta lumière. Suis mes pas. Je saurai séparer les eaux qui sépare ton coq de… l’âne.

OK: Tu veux un site web qui fait des visites parce que tu veux éventuellement générer :

  • De l’argent
  • Des “leads”
  • Des ventes
  • Des contacts
  • De la reconnaissance de marque (brand)
  • etc.

Suis mes conseils que j’expliquerai au fur et à mesure sur les articles de ce site et tu sauras devenir riche et puissant pour ensuite te demander est-ce que c’est vraiment l’argent qui fait le bonheur, ou plutôt le fait de vivre ses passions librement auprès des êtres chers ?

Si ton site web ne fait pas de visites c’est parce que “ton gâteau ne lève pas”. Pour que ton gâteau prenne,  il te faut des plusieurs éléments dont:

  • Une bonne idée
  • Un bon domaine
  • Une niche à exploiter (ex: Le marché des pommes du Canada, le marché du marketing internet à Laval, etc.)
  • Un beau design
  • Une architecture informationnelle intuitive
  • Une stratégie off-site
  • … et des keywords !

Des KEYWORDS (mots-clés). Alors voici les étapes pour établir une liste de mots clés. Le premier procédé dans la découverte de keywords s’appelle KEYWORD RESEARCH.

1. KEYWORD RESEARCH

Pour te dresser une liste de keywords, tu dois te créer un document excel et :

  1. Inscrire les mots qui - selon toi - correspondent le plus à ton site. (ex: AUTO, VOITURE, LOCATION, VENTE, OCCASION, MONTREAL)
  2. Juste en dessous, des mots qui sont des combinés de #1 (ex: AUTO LOCATION, AUTO VENTE, VOITURE LOCATION, LOCATION MONTREAL, LOCATION AUTO MONTREAL, etc.). Prends les combinaisons les plus significatives.
  3. Ensuite tu vas sur Google Adword Keyword tool et rajoutes tous les mots qui déclineront des mots que tu as rajouté en .1 et .2. Tu les importes en csv et ensuite tu rajoutes ces mots à la liste que tu t’es fait.
  4. Là tu devrais avoir pas mal de mots clés. Bravo. Tu prends une gorgée de café ou une gorgée de ton jus favoris.

Maintenant que faire avec ces mots ? Il faut savoir par la suite le nombre de clics estimés par Google. C’est important parce que sinon on pourrait cibler sans le savoir :

  • Des mots clés qui n’ont que 0.001 visites par jour avec une probabilité de 1% de visite par4 an (ex: le keyword “Pneus location à moitié usagés mais pas trop”).
  • Des mots clés qui sont tellement compétitifs (ex: Le keyword “Buy viagra”) que c’est impossible à obtenir du traffic de ces mots car c’est presqu’ impossible d’obtenir de la visilibilté sur les moteurs de recherche pour ces mots.

Donc fesont maintenant ce qui s’appelle TRAFFIC ESTIMATION.

2. TRAFFIC ESTIMATION

Voici les étapes :

  1. Tu prends ta liste de mots clés établie précédemment et vas sur Google Traffic Estimator Tool.
  2. Tu colles ta liste sur “Enter your keywords”
  3. Tu entre 100$ à “Choose a currency”
  4. Skip “Choose daily budget (optional)”
  5. Regarde un point distant et fixe-le pendant au moins 1 minute. C’est bon pour les yeux.
  6. Sélectionne la langue, région et pays dans “Select targetting”
  7. Next, Download en csv et ouvre. Une fois exporté et ouvert tu constateras qu’il y a beaucoup de stock. Don’t panik.
  8. Supprime toutes les colonnes de ton csv sauf “Keywords” et “Estimated clicks/day (upper)”. Ça correspond aux colonnes “A” et “I”.
  9. Bravo tu as maintenant le nombre de clics estimés pour chaque keyword.

Malheureusement, tu ne peux pas cibler tous les mots de cette liste (en fait oui mais en tk ça serait l’objet d’un autre post) alors tu devras te contenter de 1 à 2 keyword par pages. Selon ta liste, tu devras choisir le ou les mots qui décrivent le plus spécifiquement chacune de tes pages ciblées. Ça on appelle ça KEYWORD MAPPING

3. KEYWORD MAPPING

Oui un à 2 par pages.

Alors ce que tu vas faire avec ces mots, tu vas les associer à chacune de tes pages importantes. Tes pages importantes sur ton site ce sont les pages que tu veux vraiment avoir des visites dessus (Ex: Une image de ton chien ne serait pas l’une d’elle) Pour ce faire tu dois faire un tableau (encore excel) comme celui-ci :

KEYWORD URL
Auto location, voiture location www.monsitedechar.com
Auto Location montreal www.monsitedechar.com/contact.html
Achat ford tempo www.monsitedechar.com/ford/tempo.html

Alors maintenant que tu as des keywords associés pour tes urls tu es proche d’être en mesure de te dire que tu connais un peu le marketing internet. C’est une base au moins !

La suite à venir… Quoi faire avec ces mots clés

Si tu ne peux pas attendre que j’écrive l’article, va là : SEO MOZ RANKING FACTORS

Powered by WordPress