The problem, regardless, is that if the pages are significantly different and served randomly, it might
actually be perceived as cloaking. Matt Cutts hinted at that in the aforementioned video.
Cloaking may be used to show only one version to a particular search engine. This eliminates the problem
whereby a certain version ranks better in search engines than others. It also eliminates the possibility that
it will be perceived as spam
(so long as you’re not detected!)
Yes, cloaking is being used
to prevent the perception of cloaking! However, we recommend doing this with a caution that Google
frowns upon it.
Either way, if you’re detected, you might be sent to the corner. For more information on cloaking, read
The last method, “temporal split testing,” is also safe, and extremely easy to implement. Simply collect
data for one timespan for A (perhaps a week), and again for B. However, doing so may be less accurate
and requires more time to make determinations.
So, in summary:
Don’t ignore the organic, possibly detrimental, effects of split testing.
Use internal program logic or temporal-based split testing. Do not use redirects.
You can use cloaking to show only one version to search engines, but Google frowns upon this
Detecting Broken Links
Broken links are telltale sign of a poorly designed site. The Google Webmaster Guidelines advise webmas-
ters to “Check for broken links and correct HTML.” There are a number of online tools that you can use
for checking links, such as the one at
However, in many cases you’ll want to create your own tools for internal verification. To help you with
this task, in the following exercise you build a simple library in the form of a class named
which verifies a given link for validity and provides additional information about that URL. The library
probably does more than would be strictly necessary for detecting broken links, but the extra functional-
ity may come in handy for other administrative purposes.
Because there’s quite a bit of code to write, the functionality is demonstrated through an exercise, and
how things work is explained afterwards.
Detecting Broken Links
Create a new file named
folder. This file con-
helper class. Type this code into the file:
$LINKCHECKER_total_str = ‘’;
Chapter 13: Coping with Technical Issues
c13.qxd:c13 10:45 254