Thursday, 07 April 2011 04:52

Cek Posisi di Google Search Dengan Keyword Tertentu Menggunakan PHP Featured

Written by  JosE
Rate this item
(0 votes)

google-keyword-rank

Sebagai seorang webmaster atau blogger pasti ingin agar web/blog kita terindex oleh google search. Berbagai macam tips dan trik yang bisa kita dapat di internet tentang SEO ini.

Google menggunakan keyword dalam pencariannya, nah masalahnya begitu banyak web site yang terindex oleh google, misalkan saja kita mempunyai web/blog tentang "belajar memasak" lalu coba lakukan pencarian di google denagn keyword "belajar memasak" di posisi mana web/blog kita ?? atau apa kita harus mengecek nya sampai ke halaman 10 atau 20 atau lebih ? ya bisa aja tapi cape juga kan ? :p

Begitu banyak tools / software yang menyediakan pengecekan terhadap website dengan keyword. Silahkan googling untuk mendapatkannya.

Disini saya akan membagi program sederhana mengetahui posisi web/blog pada google search menggunakan PHP, dimana terdapat 3 file yaitu index.php, search.php dan keywordPosition.php program ini saya modifikasi dari situs http://www.phpclasses.org. anda pun dapat memodifikasinya secara bebas karena berlisensi GNU FDL.

file : index.php digunakan untuk input yang dibutuhkan dalam pengecekan :

  • Input Teks URL : halaman situs yang akan di cek posisinya
  • Input Teks Keyword : kata kunci untuk digunakan dalam pencarian
  • Option Server Google : di google mana akan di cek ? .co.id / .com

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
    <title>Google Keyword Position</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body >
  <form name="url_kw" action="search.php" method="get">
      <label for="url">URL:</label>
      <input type="text" name="url" id="url" size="55" value="<?= isset($_GET['url']) ? $_GET['url'] : 'http://' ?>" />
      <br />
      <label for="keyword">Keyword:</label>
      <input type="text" name="keyword" id="keyword" size="35" value="<?= isset($_GET['keyword']) ? $_GET['keyword'] : null ?>" />
      <select name="gooLoc">
    <option value="co.id">Google Indonesia</option>
    <option value="com">Google Amerika</option>
      </select>
      <br />
      <input type="submit" name="submit_button" value="SEARCH" onclick="this.value='Searching...';" />
      <input type="button" value="CANCEL" onclick="javascript: window.location='<?= $_SERVER['HTTP_REFERER'] ?>';" />
      <br />
  </form>
</body>
</html>

file : search.php dipanggil pada saat tombol submit di tekan dan akan memproses inputan user lalu di proses menggunakan class-class yang di include lalu mencatak hasil di browser :

<?
include('keywordPosition.php');
$position=new KeywordPosition($_GET['url'],$_GET['keyword'], $_GET['gooLoc'], 10);
$index=$position->GetPosition();
if($index==-1)
   echo 'Not in search results';
else
   echo 'You are at '.$index;
?>

file : keywordPosition.php class yang akan di gunakan dalam proses pengecekan ke server google :

<?
/**
 * keywordPosition.php :: Google Keyword Position class
 *
 * Class version 1.0.0.0
 * copyright (c) 2009 by Sandeep Kumar
 * modified by cipul
 * Google Keyword Position is an open source PHP class library for easily know about google keyword position.

 * KeywordPosition is released under the terms of the LGPL license
 * http://www.gnu.org/copyleft/lesser.html#SEC3
**/
class KeywordPosition
{
    var $url='';
    var $keywords='';
    var $maxPosition=1;
        var $gooLoc='';
    function KeywordPosition($url,$keywords,$gooLoc,$maxPosition)
    {
        $url=str_replace('http://www.','',$url);
        //$url=str_replace('www.','',$url);
        $this->url=$url;
        $this->keywords=$keywords;
                $this->gooLoc=$gooLoc;
        if($maxPosition<1)
        $maxPosition=1;
        $this->maxPosition=$maxPosition;
    }
    function GetPosition()
    {
        if(isset($this->url) && isset($this->keywords) && isset($this->gooLoc))
        {
                $make_url = 'http://www.google.'.$this->gooLoc.'/search?hl=en&q=' . urlencode($this->keywords) . '&start=';
             $index=0; // counting start from here
             $found=false; // set this flag to true when position found
                for ($page = 0; $page < $this->maxPosition; $page++)
             {
                 if($found==true) // break the loop when position found
                 break;
                 $readPage = fopen($make_url . $page  . 0 ,'r');
                 $contains = '';
                  if ($readPage)
                {
                    while (!feof($readPage))
                    {
                        $buffer = fgets($readPage, 4096);
                        $contains .= $buffer;
                    }
                    fclose($readPage);
                   }
                $results = array();
                preg_match_all('/a href="/([^"]+)".+?>.+?<\/a>/',$contains,$results);
                foreach ($results[1] as $link)
                {
                $link = preg_replace('(^http://|/$)','',$link);
                $index=$index+1;
                if (strlen(stristr($link,$this->url))>0)
                {
                $found=true;
                break;
                }
                }
            }
            if($found==true)
            return $index;
            else
            return -1;
        }
       return -1;
   }
}
?>

Upload ke tiga file ini ke server anda dan coba running. Selamat Mencoba dan Memodifikasi.

Leave a comment

Make sure you enter the (*) required information where indicated.

PHP Books

QR Code