Webmaster / SEO


Webmaster / SEO08 Aug 2006 07:38 am

If your web site is listed in the Open Directory Project (ODP, dmoz.org) then Google and MSN will often use the text that the ODP uses to describe your web site in their own search results.

Unfortunately, the descriptions in the Open Directory Project are often outdated and they don't reflect the current status of a web site. That means that your web site might be listed with an outdated description in the search results on Google and MSN.

How to get rid of the ODP description

To tell Google and MSN not to use the ODP description for your web site. You can direct Google and MSN not to use the ODP as a source by adding a new Meta tag to your web pages.

To prevent all search engines (that support the Meta tag) from using the ODP description for the page's description, use the following HTML tag:

CODE:
  1. <meta NAME="ROBOTS" CONTENT="NOODP"></meta>

To specifically prevent Google from using this information for a page's description, use

CODE:
  1. <meta NAME="GOOGLEBOT" CONTENT="NOODP"></meta>

or just prevent MSN from using the description, use

CODE:
  1. <meta NAME="msnbot" CONTENT="NOODP"></meta>

Once you add this Meta tag to your pages, it may take some time until a new description of your web page will appear in the search results of Google and MSN, depending on how often your site is spidered.

Yahoo does not support the NOODP tag, since they operate their own directory they do not need to pull the web page descriptions from the ODP.

--------------------------------
Test king has world class reputation in conducting tests for computer courses and certifications in tests such as 1Y0-258 and 312-50. Other tests conducted at test king prepare students for Cisco certifications with tests like 646-171 and 642-104. Test king is also known for Microsoft testing with practice tests such as 70-551 and 70-298.

Webmaster / SEO07 Jul 2006 03:47 pm

How to create a DHTML expandable lists.

Try the following example:

CODE:
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  4. <title></title>
  5. </meta><meta name="description" content="">
  6. </meta><meta name="keywords" content="">
  7.  
  8. <style>
  9. .general {font-family:Verdana;font-size:11;color:white}
  10. .span_general {font-family:Verdana;font-size:9;color:white;border-style:solid;border-color:white;border-width:1px 1px 1px 1px;text-align:center;width:16;height:15;cursor:hand}
  11. </style>
  12.  
  13. <script>
  14.  
  15. function objectOver(x){
  16. x.style.color="#9ff5ff";
  17. }
  18.  
  19. function objectOut(x){
  20. x.style.color="white";
  21. }
  22.  
  23. function collapse(x){
  24. var oTemp=eval("document.all.text_"+x);
  25. var oClick=eval("document.all.click_"+x);
  26.  
  27.       if(oTemp.style.display=="block"){
  28.             oTemp.style.display="none";
  29.             oClick.innerHTML="+";
  30.       }
  31.       else{
  32.             oTemp.style.display="block";
  33.             oClick.innerHTML="-";
  34.       }
  35. }
  36. </script>
  37.  
  38. </meta></head>
  39. <body bgcolor=#224452>
  40.  
  41. <div id=click_1 class=span_general onclick=javascript:collapse('1') onmouseover=javascript:objectOver(this) onmouseout=javascript:objectOut(this) style="margin-left:100;position:relative;left:-25;top:14"> - </div>
  42.  
  43. <div style="margin-left:100;display:block" class=general>
  44. Text 1 TITLE
  45. </div><br />
  46. <div id=text_1 style="margin-left:100" class=general>
  47. text that is displayed under Text 1 TITLE<br />
  48. another line of text here<br />
  49. </div>
  50.  
  51. <div id=click_1_1 class=span_general onclick=javascript:collapse('1_1') onmouseover=javascript:objectOver(this) onmouseout=javascript:objectOut(this) style="margin-left:200;position:relative;left:-25;top:14"> - </div>
  52. <div style="margin-left:200;display:block" class=general>
  53. Text 1_1 TITLE
  54. </div><br />
  55. <div id=text_1_1 style="margin-left:200" class=general>
  56. Text under Text 1_1 TITLE catagory<br />
  57. </div>
  58.  
  59.  
  60. <div id=click_1_2 class=span_general onclick=javascript:collapse('1_2') onmouseover=javascript:objectOver(this) onmouseout=javascript:objectOut(this) style="margin-left:200;position:relative;left:-25;top:14"> - </div>
  61. <div style="margin-left:200;display:block" class=general>
  62. Text 1_2 TITLE
  63. </div><br />
  64. <div id=text_1_2 style="margin-left:200" class=general>
  65. This is a test of the emergency broadcasting system.<br />
  66. </div>
  67.  
  68. <div id=click_1_2_1 class=span_general onclick=javascript:collapse('1_2_1') onmouseover=javascript:objectOver(this) onmouseout=javascript:objectOut(this) style="margin-left:300;position:relative;left:-25;top:14"> - </div>
  69. <div style="margin-left:300;display:block" class=general>
  70. Text 1_2_1 TITLE
  71. </div><br />
  72. <div id=text_1_2_1 style="margin-left:300;display:block" class=general>
  73. If there were a real emergency and you thought someone would care this <br />
  74. information would be classified and you wouldn't know anyhows<br />
  75. </div>
  76. <div id=click_1_3 class=span_general onclick=javascript:collapse('1_3') onmouseover=javascript:objectOver(this) onmouseout=javascript:objectOut(this) style="margin-left:200;position:relative;left:-25;top:14"> - </div>
  77. <div style="margin-left:200;display:block" class=general>
  78. Text 1_3 TITLE
  79. </div><br />
  80. <div id=text_1_3 style="margin-left:200" class=general>
  81. Example for 1_3 text area...<br />
  82. Notice in the code that the breaks all have a trailing slash....thus closing the br tag<br />
  83. I'm trying to remember to use correct syntax before something breaks it.
  84. </div>
  85.  
  86. </body>
  87. </html>

PHP Code& Webmaster / SEO22 Jun 2006 02:45 pm

This is available for PHP 3, PHP 4, & PHP 5.

strtoupper -- Make a string uppercase

Description
string strtoupper ( string )

Returns string with all alphabetic characters converted to uppercase.

Note that 'alphabetic' is determined by the current locale. For instance, in the default "C" locale characters such as umlaut-a (ä) will not be converted.

Example 1. strtoupper() example

CODE:
  1. <?php
  2. $string = "This is a test of the Emergency Broadcasting system...";
  3. $string = strtoupper($string);
  4. echo $string;  // echos - THIS IS A TEST OF THE EMERGENCY BROADCASTING SYSTEM...

Note: This function is binary-safe.

PERL code snippets& Webmaster / SEO26 Apr 2006 11:02 am

After a recent incident of some piss poor script kiddie defacing one of of my websites I wote a quick and dirty little perl script to both monitor and repair things should it happen again. (thus giving me much more narrow window of server logs to check to find the exploit or whatever allowed it to happen in the first place).

Here's how it works in a nutshell, the site's content is completely dynamic, however the php script to generate it is static..

  • $file1 is the working page
  • $file2 is the name of the known good page
  • generate a checksum of the two files, the output will be a string of numbers followed by a character count and the filename checked.
  • compare the first 10 digits of the checksum of the returned string (adjust to suit your needs)
  • if they are different run 'page' (sends an email to my cell/pager) and 'repair' (renames the bad file appending the date/time then copies the known good file to replace the defaced one)
  • otherwise exit
  • Pretty simple, and I'm certain my code could be optimized to run a lot cleaner (if you want to submit a cleaner version by all means post it in the comments!) In the interim this works.

    compare.pl

    CODE:
    1. #!/usr/bin/perl
    2. ###Dave Cochran http://blog.captivereefing.com
    3. $file1 = "index.php";
    4. $file2 = "index.good";
    5. $diff1=`cksum $file1`;
    6. $diff2=`cksum $file2`;
    7. $diff1value = substr($diff1, 0, 9);
    8. $diff2value = substr($diff2, 0, 9);
    9. if ($diff1value != $diff2value)
    10. {
    11.   &page;
    12.   &repair;
    13. exit;
    14. }
    15. #print "no difference in file checksums.";
    16. #uncomment the line above for testing
    17. exit;
    18.  
    19. sub page
    20. {
    21. # sendmail routine source from http://kangry.com/topics/viewcomment.php?index=427
    22. use Time::localtime;
    23. open (OUT,"|/usr/sbin/sendmail -t");
    24. print OUT "From: you\@yourdomain.com\n";
    25. #remember to escape the @
    26. print(OUT "Date: ".ctime()."\n");
    27. print(OUT "To: email\@youremailorpager.com\n");
    28. #remember to escape the @
    29. print(OUT "Subject: Index.php changed!\n");
    30. print(OUT "\n");
    31. print(OUT "index.php has been changed!\n");
    32. close(OUT);
    33. } # end sub page
    34.  
    35. sub repair
    36. {
    37. use Time::localtime;
    38. use File::Copy;
    39. rename($file1, $file1.ctime()) || die "Cannot rename file.txt: $!";
    40. copy($file2, $file1) or die "File cannot be copied.";
    41. } # end sub repair

    This will require two perl modules Time::localtime and File::Copy which are generally installed with the perl bundle by default, if not get them from CPAN or contact your host.

    Simply run the script I called compare.pl via cron or whatever means you wish as often as you want to check the page. Personally every 5 mins works out pretty good for me.

    Feel free to use the code above as you will, modify it to suit your needs, be it to protect your web pages, files, or whatever. If you find it useful, please send $$$, or just a thanks.

    Webmaster / SEO& vBulletin20 Apr 2006 07:49 am

    While surfing around I found yet another great resource for vBulletin, great folks with lots of good ideas, and a lot of expertise.

    Take a look at vbulletin-faq.com Tell'm dakar referred you :)

    Next Page »


    MPAA - Loan Consolidation - Download DivX movies - Oyunlar - McDonalds
    X10 Home Security|Dakar's Photos
    Listed on BlogShares