As you know without good SERP your site will get next to nothing visitors, only visitors will be you and a couple of your friends besides a few other people, that's all.
To get more traffic you need to optimize your page for search engines (SEO) for the main keywords you have in mind. How about the rest of the keywords related with your site?
The importance of tag cloud comes right in that point. Having a tag cloud in your site like telling the crawlers "look I have all this stuff in my web site" and causes the search engines to index your site for those keywords as well.
Below you may find a PHP Tag CLoud Script that I am currently using in my site. All the words were supplied from the MySQL Database.
<?
$tag_string="";
$query3=" SELECT template_name FROM fwt_templates";
$result3=mysql_query($query3) or die(mysql_error());
while ($row3 = mysql_fetch_array($result3))
{
$raw_tag=explode(" ", trim($row3['template_name']));
for($kl=0;$kl<count($raw_tag);$kl++)
{
$strr=$raw_tag[$kl];
$strr=str_replace("0"," ",$strr);
$strr=str_replace("1"," ",$strr);
$strr=str_replace("2"," ",$strr);
$strr=str_replace("3"," ",$strr);
$strr=str_replace("4"," ",$strr);
$strr=str_replace("5"," ",$strr);
$strr=str_replace("6"," ",$strr);
$strr=str_replace("7"," ",$strr);
$strr=str_replace("8"," ",$strr);
$strr=str_replace("9"," ",$strr);
$strr=str_replace("*"," ",$strr);
$strr=str_replace("-"," ",$strr);
$strr=str_replace("("," ",$strr);
$strr=str_replace(")"," ",$strr);
$strb=str_replace(" ","",$strr);
if(strlen($strb)>3)//word length to avoid listing words like "and" "of" etc
{
$tag_string.=$strr." ";
}
}
}
$tag_array=explode(" ", $tag_string);
$tag_array=array_unique($tag_array);
shuffle($tag_array);
echo "<div id=\"tagcloud\">";
$tplm=count($tag_array);
if(count($tag_array)>200)
{
$tplm=200;//I want to list only 200 words
}
// start looping through the tags
for ($ii=0;$ii<$tplm;$ii++)
{
$tags_array[$ii]=$tag_array[$ii];
}
sort($tags_array);
for ($ii=0;$ii<$tplm;$ii++)
{
// determine the popularity of this term as a percentage
$percent = rand(1,100);
// determine the class for this term based on the percentage
if ($percent < 20)
{
$class = 'smallest';
} elseif ($percent >= 20 and $percent < 40) {
$class = 'small';
} elseif ($percent >= 40 and $percent < 60) {
$class = 'medium';
} elseif ($percent >= 60 and $percent < 80) {
$class = 'large';
} else {
$class = 'largest';
}
// output this term
echo "<span class=\"$class\"><a href=\"search.php?query=" . urlencode($tags_array[$ii]) . "\">" . $tags_array[$ii] . "</a></span> ";
}
// close the output
echo "</div><p>";
?>
Good luck.