دریافت رنک الکسا
قبل یا بعد از رنک گوگل ، رنک الکسا مهم است . رنک الکسا بیشتر مربوط می شود به تعداد بازدید سایت و سایت ها را برحسب تعداد بازدید رنک بندی می کند . اگر شما هم دوست دارید رنک الکسا یا تعداد لینک های داده شده به سایتتون را برای کاربرانتان به نمایش بگذارید می توانید از کلاس زیر استفاده کنید :
define('RANK', 'RANK'); define('COUNTRY_RANK', 'COUNTRY_RANK'); define('COUNTRY_NAME', 'COUNTRY_NAME'); define('TITLE', 'TITLE'); define('DESC', 'DESC'); define('LINKSIN', 'LINKSIN'); define('EMAIL', 'EMAIL'); define('URL', 'URL'); class alexa_rank { public $sitexml = ""; public function set($url){ @$this->sitexml = simplexml_load_file('http://data.alexa.com/data?cli=10&dat=snbamz&url='.$url); return $this->sitexml !== false; } public function get($type){ switch($type){ case RANK: return isset($this->sitexml->SD[1]->POPULARITY) ? (int) $this->sitexml->SD[1]->POPULARITY->attributes()->TEXT : 0; break; case COUNTRY_RANK: return isset($this->sitexml->SD[1]->COUNTRY) ? (int) $this->sitexml->SD[1]->COUNTRY->attributes()->RANK : 0; break; case COUNTRY_NAME: return isset($this->sitexml->SD[1]->COUNTRY) ? (string) $this->sitexml->SD[1]->COUNTRY->attributes()->NAME : 0; break; case TITLE: return isset($this->sitexml->DMOZ[0]->SITE) ? (string) $this->sitexml->DMOZ[0]->SITE->attributes()->TITLE : 0; break; case DESC: return isset($this->sitexml->DMOZ[0]->SITE) ? (string) $this->sitexml->DMOZ[0]->SITE->attributes()->DESC : 0; break; case LINKSIN: return isset($this->sitexml->SD[0]->LINKSIN) ? (int) $this->sitexml->SD[0]->LINKSIN->attributes()->NUM : 0; break; case EMAIL: return isset($this->sitexml->SD[0]->EMAIL) ? (string) $this->sitexml->SD[0]->EMAIL->attributes()->ADDR : 0; break; case URL: return (string) $this->sitexml->SD[0]->attributes()->HOST; break; } } }
و فکر می کنم با مثال زیر همه چیز تمام هست!
$alexa = new alexa_rank(); $url="http://php.net"; if($alexa->set($url)){ echo 'RANK : '.$alexa->get(RANK).'<br>'; echo 'COUNTRY_RANK : '.$alexa->get(COUNTRY_RANK).'<br>'; echo 'COUNTRY_NAME : '.$alexa->get(COUNTRY_NAME).'<br>'; echo 'TITLE : '.$alexa->get(TITLE).'<br>'; echo 'DESC : '.$alexa->get(DESC).'<br>'; echo 'LINKSIN : '.$alexa->get(LINKSIN).'<br>'; echo 'EMAIL : '.$alexa->get(EMAIL).'<br>'; echo 'URL : '.$alexa->get(URL).'<br>'; }