Programming and Exciting Things

[php] извличане на analytics данни

Published on 08.04.2011

Google analytics е безпорно лидер в областта на уеб анализа и в повечето сайтове присъства. Та идеята е да използваме данните събирани от него и да ги показваме някъде по сайта с помощта на php.
Вариантите как да се направи са няколко, като най-лесният според мен е да използваме Google Analytics API Class, който е написан от Doug Tan. Може да се свали от тук или от тук.

Използването му е супер лесно
пример

include "googleanalytics.class.php";
try {
	$ga = new GoogleAnalytics('[email protected]','moqtaParola');
	$ga->setProfile('ga:80948129'); // ид то на сайта
	$ga->setDateRange('2010-01-08','2010-01-09');
	$report = $ga->getReport(
		array('dimensions'=>urlencode('ga:date'),
			'metrics'=>urlencode('ga:pageviews,ga:visits,ga:avgTimeOnSite,ga:uniquePageviews,ga:percentNewVisits,ga:avgTimeOnSite,ga:visitBounceRate,ga:avgTimeOnPage'),
			//'dimensions'=>urlencode('ga:keyword'),
			//'filters'=>urlencode('ga:country=@Bulgaria'),
			'sort'=>'-ga:pageviews'
			)
		);

	print "<pre>";
	print_r($report);
	print "</pre>";
} catch (Exception $e) { 
	print 'Error: ' . $e->getMessage(); 
}


Като горния пример ще върне


Array
(
    [20100108] => Array
        (
            [ga:pageviews] => 3570
            [ga:visits] => 785
            [ga:avgTimeOnSite] => 218.16305732484076
            [ga:uniquePageviews] => 2439
            [ga:percentNewVisits] => 45.85987261146497
            [ga:visitBounceRate] => 28.152866242038215
            [ga:avgTimeOnPage] => 61.48797127468582
        )

    [20100109] => Array
        (
            [ga:pageviews] => 2692
            [ga:visits] => 520
            [ga:avgTimeOnSite] => 213.27307692307693
            [ga:uniquePageviews] => 1777
            [ga:percentNewVisits] => 55.00000000000001
            [ga:visitBounceRate] => 30.57692307692308
            [ga:avgTimeOnPage] => 51.054327808471456
        )

)


Хубавото е че могат да се правят доста комбинации по отношение на "връщаните" данни.
А тук е Dimensions & Metrics Reference директно от Google.

Също така може да се разгледа и Data API - Google Analytics Data Export API

Revolt на Windows 7

Published on 13.02.2011

Класическата игра revolt се подкарва доста лесничко и под Windows 7. Към shourtcutа към играта просто се добавя параметърче -sli и като цяло трябва да изглежда като нещо такова

"C:\Program Files (x86)\Acclaim Entertainment\Revolt\revolt.exe" -sli 

Преброяване 2011

Published on 06.02.2011

И аз се включих в електронното преброяване, радостно е че поне през 2011г. някой се е сетил че Интернет може да послужи и за нещо добро и различно от това да си пасеш виртуалните овце. Това което ми направи приятно впечатление, е че поне този път на държавен сайт SSL сертификата е валиден, освен това сайтът ползва jquery а сървърчето е Microsoft-IIS/7.0 базирано. Иначе все още се чудя за какво са сложили google analytics (в началната страница както и да е но при попълването на данните какво ще отчита?!). Другото интересно нещо е че този сайт е идеалния кандидат за cloud решение, просто за изпълнение, след края на преброяването няма да се използва, което прави купуването на сървърно оборудване излишно, но трябва да се трошат пари няма как :D. Та с това свое действие смятам, че спестих някой друг лист хартия и малко работа на служителите, които ще обикалят напред назад в следващите няколко дни.

Kohana framework: 404

Published on 29.01.2011

Един малък hook за "пренаписване" ако урл адреса не е валиден или не е описан в routes.php hooks/error.php

&lt;?php 
defined('SYSPATH') or die('No direct access allowed');

Event::clear('system.404', array('Kohana', 'show_404'));
Event::add('system.404', 'my_404');

 // пренасочваме към предварително създадена страница
function my_404() {
    url::redirect('error/404');
} 
PS: горното е за Kohana 2.3.4

Ipad емулиране под Windows

Published on 01.12.2010

Целта: да разберем как изглежда даден уеб сайт гледан от ipad. Начина на действие: Инсталираме си последната версия на Safari браузъра Стартираме го, кликаме на Preferences.. отиваме на Advanced таба, и слагаме отметка на Show Develop menu in menu bar. ... и вече от Develop менюто си избираме като какво да го рендва