Php ile Google Pagespeed Api Kullanımı

php-google-pagespeed-api-kullanimi

Php ile Google Pagespeed Api Kullanımı

Merhabalar arkadaşlar bugün çok güzel bir konu ile daha sizlerleyim. Bu konumuzda PHP ile Google Page Speed api kullanarak form aracılığı ile gönderdiğimiz linklerin verilerini çekeceğiz.

Peki Php ile Google Pagespeed Api Kullanımı nereden aklıma geldi ondan da bahsedeyim, kendim için ufak tefek web site araçlarının olduğu bir panel yaptım bu paneli hem kendim hızlıca erişmek için hem de kullanmak isteyen ziyaretçiler olur diye yaptım aslında.

Bu panele de Php ile Google Pagespeed Api Kullanımı eklemeye çalışıyordum aklıma google pagespeed api sistemi geldi. Araştırırken de api keyinin ücretsiz olduğunu görüntüledim ve bu daha da hoşuma gitti tabi:) Bunun sonunda da konusunu hem kendi panelime hem de yazısını web siteme ekleme kararı aldım. Hadi gelin nasıl yapılıyor başlayalım.

Adım 1 :

Öncelikle bize bir CURL fonksiyonu lazım hemen onu yazalım. GET ile veri alıp-gönderen bir curl fonksiyonu olması gerekiyor bu arada onu da hatırlatayım.

function curl($url) { 
$ch = curl_init(); 
curl_setopt($ch,CURLOPT_URL,$url);                                                                    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); 
curl_setopt($ch,CURLOPT_HEADER, false); 
$output=curl_exec($ch); 
curl_close($ch); 
return $output; 
} 

Evet curl fonksiyonumuz yukarıdaki gibidir bu fonksiyonu kullanarak google pagespeed linkine erişim sağlayacağız ve dönen verileri listeleyip aralarından ihtiyacımız olanları alacağız.

Adım 2 :

$baglan  = curl('https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=https://yavuz-selim.com&strategy=desktop&key=');
$vericek = json_decode($baglan,true); 

Kullanımı ise yukarıdaki gibi olacaktır. Şimdi buradaki parametrelere bir göz atalım.

URL : hız testini yapacağımız url adresidir ( https:// ya da http:// ) olarak girilmelidir. Bir formdan gönderiyorsanız tabii ki buraya input name kısmı yani değişken gelmelidir.

STRATEGY : Burası ise mobil mi yoksa masaüstü için mi test ediyorsunuz bunu belirliyor. Bunu da formdan select box yaptığınız oradan mobil veya desktop şeklinde seçilip gönderdiğinizi düşünebilirsiniz.

KEY : Key ise google pagespeed api key olarak geçmektedir. https://developers.google.com/speed/docs/insights/v5/get-started?hl=tr ilgili linkten giriş yapıp ANAHTAR ALIN butonuna tıklamanız yeterlidir. Almış olduğunuz key bilgisini yukarıdaki KEY alanına yapıştırmalısınız.

Php-ile-Google-Pagespeed-Api-Kullanimi
Php ile Google Pagespeed Api Kullanımı

Adım 3 :

Evet şimdi her şeyi yaptık şimdi geldi işimize yarayan verileri çekmeye. İşimize yarayanlardan kastımda şunlar, FCP, LCP, CLS, INDEX, TIME gibi değerleri çekeceğiz ve tabii ki en önemlisi SKOR değerini de çekeceğiz.

$results = curl('https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=https://yavuz-selim.com&strategy=desktop&key=keygelcek');
$vericek = json_decode($results,true); 

$masaustuhizi =  $vericek['lighthouseResult']['categories']['performance']['score'] * 100;

$fcp          =  $vericek['lighthouseResult']['audits']['first-contentful-paint']['displayValue'];

$lcp          =  $vericek['lighthouseResult']['audits']['largest-contentful-paint']['displayValue'];

$bt           =  $vericek['lighthouseResult']['audits']['total-blocking-time']['displayValue'];

$cls          =  $vericek['lighthouseResult']['audits']['cumulative-layout-shift']['displayValue'];

$index        =  $vericek['lighthouseResult']['audits']['speed-index']['displayValue'];

Gördüğünüz üzere Php ile Google Pagespeed Api Kullanımında tüm verileri çektik. Şimdi sadece bu değişkenleri istediğimiz yere ekrana yazdırmaya geldi sıra. Onu da bir inputlar oluşturarak içlerine yazdırabilir ya da google pagespeed üzerinde olduğu gibi gridler oluşturarak yapabilirsiniz bu kısım tamamen tasarımsal olduğu için sizin keyfinize kalmış 🙂

<?php echo $masaustuhizi;?>
<?php echo $fcp;?>
<?php echo $lcp;?>
<?php echo $bt;?>
<?php echo $cls;?>
<?php echo $index;?>
Php-ile-Google-Pagespeed-Api-Kullanimi
Php-ile-Google-Pagespeed-Api-Kullanimi

Hepsi bu kadar arkadaşlar umarım sizler için çok çok faydalı olmuştur. Bu konuyu sitemde de kullandım web sitemin araçlar kısmını ziyaret edebilirseniz mutlu olurum 🙂

Hizmetlerime göz atmak için tıklayınız.

Sonraki konuda görüşmek üzere
Kanalıma abone olmayı unutmayın 🙂..

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.

Yavuz Selim

Yavuz selim