Meta Tag

Not a problem, we generally don’t do politics in these forums. We are officially agreeing to disagree and turning to different topics. :slight_smile:

There’s a LOT of misinformation about what META tags are and what purpose they serve – when they exist to provide information that is outside the scope of HTML.

That’s right, they are there to provide information to user agents that HTML cannot. There IS NO ACTUAL W3C Specification for what goes into “name” or “content”!!! It exists to allow information outside the scope of HTML to be passed. While they do provide examples of using it, none of those are actually written in stone in the HTML specificaion.

While there are many common values, well… let’s go down the list of ones that matter.

http-equiv – this attribute literally means whatever you put in ‘content’ should be treated the same as if it was in the http header. For example:


<meta
	http-equiv="Content-Type"
	content="text/html; charset=utf-8"
/>

Is supposed (some UA’s skip this) to be the same as saying

Content-Type: text/html; charset=utf-8

In the HTTP response headers. Other values you could pass include ‘vary’, ‘content-encoding’, ‘cache-control’, and ‘expires’. The actually HTTP response headers are supposed to trump this, so in theory it’s only useful for passing values that are missing. This is why including the above meta is common and generally worth NOT skipping, since it is what in local testing will be used to decode the document. (otherwise locally it will default to iso 8859-1 in most UA’s)… just part of why I dislike the new HTML 5 lip service.

name – there’s a whole plethora of name type meta-data that NOTHING pays ANY attention to. Author, generated, generator – nobody gives a flying purple fish about those. They do nothing but waste bandwidth for information NOTHING actually uses!

There are generally only three NAME attribute values you actually need to give damned about – and all three of them are for search engines.

name=“keywords” – a list of words on the current page that are important. This is WORDS – not phrases, not sentences, WORDS. keywords. They occasional unique two-word non-compound compound (like a proper name) is acceptable, stuffing it with every possible combination is not. People think this meta is ignored – it isn’t ignored (in my own testing) if you SHOCK use it properly and have 100% relevance to the page it’s on. You should keep it to six to eight words, those words should appear somewhere inside <body> at LEAST once, and be separated with commas. Yes, commas. Not semi-colons, not vertical breaks, COMMAS. Vary from this formula, and you are just wasting bandwidth.

for example:


<meta
	name="keywords"
	content="pascal,programming,openGL,sdl,paku paku"
/>

“paku paku” being the proper name of a program is acceptable despite being two words.

You’ll often see people doing idiotic nonsense like this:


<meta
	name="keywords"
	content="pascal,pascal programming, opengl, opengl programming, sdl, sdl programming, game programming, game development, game sales"
/>

Which if it wasn’t ignored (it is) would be redundant to just saying:

content=“pascal,opengl,sdl,game,programming,development,sales”

It’s very easy to use properly, just think of it like a word jumble… six to eight words that actually on the page as text content you’d like to rank just a hair higher for. That’s it, that’s all it’s for.

name=“description” – A short natural language text to be shown on your SERP. This is NOT for SEO in terms of ranking, it’s for SEO in terms of making your SERP look more attractive. SERP == Search Engine Results Page – the page on the search engine your site appears, specifically the listing itself. For some reason some of the SEO snake oil re-re’s think SERP means just where you are listed, and not what that listing actually looks like… This of course is fiction, parrotting other snake oil doctors, or just flat out ignorance.

for example, if you had:


<title>
	My Site
</title>

<meta
	name="description"
	content="Here in my site, I feel safest of all. I can lock all my ports. The only way to live, is in sites."
/>

Your SERP listing would be something like this:

My Site
Here in my site, I feel safest of all. I can lock all my
ports. The only way to live, is in sites.

Again, a very simple meta, that people abuse endlessly and uselessly failing to grasp the entire point of using it in the first place!

name=“robots” – provides specific instructions for search engines. Single words you can put into the content attribute separated by commas.

‘noindex’ – do not index this page for searches. Pretty simple, don’t list this page in results. I have the robots.txt equivalent to this in my /for_others directory so all those rewrites I’ve done for people don’t steal their link/search mojo.

‘noodp’ – says to use what’s on this page for the SERP listing instead of what’s listed in the ‘open directory project’. I had a problem a while back with a site where someone made a ODP listing for one of my pages, that completely screwed up my results. (said dipshit was arguing my sites didn’t index right, then intentionally sabotaged me with ODP – real class!) Done properly the "open directory project’ can make your SERP listing look really nice, but it’s redundant and is just one more thing to have to edit.

‘noydir’ – yahoo has their own goofy ‘content directory’ thing, adding this tells them to go shtup themselves.

So, for example:


<meta
	name="robots"
	content="noodp,noydir"
/>

Would tell the robots not use use ODP and Y! not to use their stupid extra crap.


Bottom line, that’s it… two different meta types, three different values for name attribute. ANYTHING else people say to include or tend to use for META are just bandwidth wasting BS… They are very simple to implement and anyone who tells you to play stupid games with the values, use different delimiters or more complex forms are packing you so full of sand you could change your name to Sahara.

Can I create a meta tag for people who browse my page? For instance, one thing that I hate as a student trying to make a bibliography is finding the last-edit date. Usually, I’ll look in source for a last edited comment or such. Could I (although it’s irrelevant to SEs) possibly make my own meta tag like:

<meta name="LastEdit" content="4/7/2012">

I could put it on the page itself, but would it be better to do it any one way?

~TehYoyo

You can use <meta name=“date” content=“2012-03-29T17:29:27+0100” />, although I’m pretty sure that won’t validate if you use an HTML5 doctype. If I include that meta, my editor (Bluefish) automatically updates it every time I save the file. I don’t know what other editors do.

That’s what it’s for… not just for search engines or the W3C – you want to make up your own values for your own internal use, go for it. That’s the real advantage to the element is you can add your own values willy-nilly, and so long as nobody else tries to make the same ‘name’, you’re in the clear.

Right. OK, that’s what I thought - it’s almost like a comment, right?

~TehYoyo

Basically. Although comments do absolutely nothing for outside users. Meta tags will have some effect o nwhat shows in search engines.

But they won’t have any effect if they’re nonstandard, right?

~TehYoyo

Correct.

OK. Thanks for that.

Feel free to close.
~TehYoyo