Pagerank ohne Toolbar auf Webseiten anzeigen

Für eine eigene Webseite war ich auf der Suche, nach Möglichkeiten, wie man am Besten den Pagerank ohne Toolbar anzeigen lassen kann. Und erweitert nicht auf der eigenen Webseite sondern auf einer Webseite für andere Webseiten. Nach einigem überlegen und einem Tip eines befreundeten Webmasters kamen wir drauf das einige Script das ja eingebaut haben (Linkkataloge etc.) und es solche Schnipsel doch eigentlich geben müsste.
Ok ich war erstaunt, ganz so einfach liess es sich dann doch nicht finden, aber bei http://www.pagerankcode.com konnte mir dann geholfen werden. Wenn es interessiert, hier gibt es auch kostenfreie Pagerank Buttons.

Anbei das Script mit welchem ihr den Code unten drunter aufruft. Ich habe es testfile.php genannt. Mit ein wenig php und html Kenntnisse könnt ihr es entsprechend anpassen.

<?php

// content of testfile.php

include(‘pagerank.php’);

$pr = getPageRank(‘http://www.inetbiz.de’);

echo ‘pagerankcode.com has PR ‘.$pr;

?>

Folgend der eigentliche Code zur Berechungd es Pageranks. Ich glaube in Fackkreisen wird es als Google Hash Code gehandelt. Anyway wie es heißt, es funktioniert.

<?php

define(‘GOOGLE_MAGIC’, 0xE6359A60);

function _zeroFill($a, $b){
$z = hexdec(80000000);
if ($z & $a){
$a = ($a>>1);
$a &= (~$z);
$a |= 0×40000000;
$a = ($a>>($b-1));
}else
$a = ($a>>$b);
return $a;
}

function _mix($a,$b,$c){
$a -= $b; $a -= $c; $a ^= (_zeroFill($c,13));
$b -= $c; $b -= $a; $b ^= ($a<<8);
$c -= $a; $c -= $b; $c ^= (_zeroFill($b,13));
$a -= $b; $a -= $c; $a ^= (_zeroFill($c,12));
$b -= $c; $b -= $a; $b ^= ($a<<16);
$c -= $a; $c -= $b; $c ^= (_zeroFill($b,5));
$a -= $b; $a -= $c; $a ^= (_zeroFill($c,3));
$b -= $c; $b -= $a; $b ^= ($a<<10);
$c -= $a; $c -= $b; $c ^= (_zeroFill($b,15));
return array($a,$b,$c);
}

function _GoogleCH($url, $length=null, $init=GOOGLE_MAGIC){
if(is_null($length))
$length = sizeof($url);
$a = $b = 0x9E3779B9;
$c = $init;
$k = 0;
$len = $length;
while($len >= 12){
$a += ($url[$k + 0] + ($url[$k + 1] << 8) + ($url[$k + 2] << 16) + ($url[$k + 3] << 24));
$b += ($url[$k + 4] + ($url[$k + 5] << 8) + ($url[$k + 6] << 16) + ($url[$k + 7] << 24));
$c += ($url[$k + 8] + ($url[$k + 9] << 8) + ($url[$k + 10] << 16) + ($url[$k + 11] << 24));
$_mix = _mix($a,$b,$c);
$a = $_mix[0]; $b = $_mix[1]; $c = $_mix[2];
$k += 12;
$len -= 12;
}
$c += $length;
switch($len){
case 11: $c += ($url[$k + 10] << 24);
case 10: $c += ($url[$k + 9] << 16);
case 9 : $c += ($url[$k + 8] << 8);
case 8 : $b += ($url[$k + 7] << 24);
case 7 : $b += ($url[$k + 6] << 16);
case 6 : $b += ($url[$k + 5] << 8);
case 5 : $b += ($url[$k + 4]);
case 4 : $a += ($url[$k + 3] << 24);
case 3 : $a += ($url[$k + 2] << 16);
case 2 : $a += ($url[$k + 1] << 8);
case 1 : $a += ($url[$k + 0]);
}
$_mix = _mix($a,$b,$c);
return $_mix[2];
}

function _strord($string){
for($i = 0;$i < strlen($string);$i++)
$result[$i] = ord($string{$i});
return $result;
}

function getPageRank($url){
$pagerank = -1;
$ch = “6″._GoogleCH(_strord(“info:” . $url));
$fp = fsockopen(“www.google.com”, 80, $errno, $errstr, 30);
if($fp){
$out = “GET /search?client=navclient-auto&ch=” . $ch . “&features=Rank&q=info:” . $url . ” HTTP/1.1\r\n”;
$out .= “Host: www.google.com\r\n”;
$out .= “Connection: Close\r\n\r\n”;
fwrite($fp, $out);
while (!feof($fp)){
$data = fgets($fp, 128);
$pos = strpos($data, “Rank_”);
if($pos === false){
}else
$pagerank = substr($data, $pos + 9);
}
fclose($fp);
}
return $pagerank;
}

?>

 

Das Ergebis unserer Bemühungen könnt ihr auf der Referenzen Webseite der Firstlevel Media Deutschland sehen.

Speak Your Mind

*