I wanted to use W3C validator to optimize my WordPress blog. At the main page it claimed 28 errors. One of them for example was the following:
Line 28, Column 53: end tag for “meta” omitted, but OMITTAG NO was specified
<meta name="DC.Creator" content="Raffael Herrmann">
So I fixed it and clicked on revalidate. Nevertheless the validator says, that this error is still existent. But if I look at the browsers source code window from my webbrowser, I can see that may changes are delivered successful. If I check “Show Source” at the W3C validator options and reload my site, I can see, that the source code from my site, the validator uses, is outdated/without the changes.
So can anybody explain me why the W3C validator doesn’t recognize my changes? If you wan’t to have a look yourself – http://code-bude.net/ is the URL of my blog.
I know this is a little old, but I’m having the exact same issue right now, I found this thread, and then I found an easy workaround.
The issue:
I fixed some of the things the validator told me about, clicked the Revalidate button, and it shows the same errors and source code as it did before I made changes.
Some caching is definitely happening somewhere. I’m using WordPress too, along with the W3TC plugin, but the only Browser cache setting I have enabled is Set Last-Modified header.
The solution:
I’ve ran into similar issues before with other services, and here is an easy workaround…
Add “?x=1” to the end of the url, increasing the value each time you want to re-validate. This makes it skip the cache because it is a different url. (If you already have a question mark in the url, use “&x=1”. If you already have “x=” in the url, use anything else, like “y=”.)
For example…
If you want to validate the home page at:
http://mydomain.com/
…you can re-validate it at:
http://mydomain.com/?x=1
…and re-validate it again at:
http://mydomain.com/?x=2
…and so on.
If you want to validate a dynamic page at:
http://mydomain.com/mypage.php?x=123
…you can re-validate that page at:
http://mydomain_com/mypage.php?x=123&y=1
…and validate it again at:
http://mydomain_com/mypage.php?x=123?y=2
…and so on.