Подключаем GAPI к CodeIgniter

  • Содержание

Месяц назад я знакомил вас с классом GAPI, предназначенным для получения статистики с Google Analytics. В этой статье я покажу, как можно использовать его вместе с Сodeigniter.

Скопируйте скачанный с Google Code класс GAPI в папку libraries вашего проекта.

Затем в той же папке создайте новый файл ga_api.php, который будет подключать GAPI к фреймворку:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Ga_api 
{
	private $_CI;
	private $ga = null;
	private $ga_email = '';
	private $ga_password = '';
	private $ga_profile_id = '';

	/**
	 * Constructor
	 *
	 * @access	public
	 */

	function __construct($props = array())
	{
		if (count($props) > 0)
		{
			$this->initialize($props);
		}

		include_once('gapi.class.php');

		$this->_CI =& get_instance();
		$this->ga = new gapi($this->ga_email, $this->ga_password);

		log_message('debug', "GA_API Class Initialized");
	}

	// --------------------------------------------------------------------

	/**
	 * Initialize preferences
	 *
	 * @access	public
	 * @param	array
	 * @return	void
	 */	
		
	function initialize($config = array())
	{
		$defaults = array(
			'ga_email'	 => '',
			'ga_password' => '',
			'ga_profile_id' => '',
		);	
	
		foreach ($defaults as $key => $val)
		{
			if (isset($config[$key]))
			{
				$this->$key = $config[$key];
			}
			else
			{
				$this->$key = $val;
			}
		}
	}

	// --------------------------------------------------------------------
	
	function __call($method, $arguments) {
		return call_user_func_array(array($this->ga, $method), $arguments);
	}

}

// END GA_API Class

/* End of file ga_api.php */
/* Location: ./application/libraries/ga_api.php */

Новый класс Ga_api является оболочкой, которая загружает редактор и обеспечивает доступ ко всем его методам.

Загрузка класса осуществляется стандартными для фреймворка методами:

$config = array(
	'ga_email' => 'YOUR ANALYTICS EMAIL',
	'ga_password' => 'YOUR ANALYTICS PASSWORD',
	'ga_profile_id' => 'ANALYTICS SITE PROFILE ID'
);
$this->load->library('ga_api', $config);

Или используя файл конфигурации (файл ga_api.php в папке config):

<?php
$config['ga_email'] = 'YOUR ANALYTICS EMAIL';
$config['ga_password'] = 'YOUR ANALYTICS PASSWORD';
$config['ga_profile_id'] = 'ANALYTICS SITE PROFILE ID';

Ниже предлагаю небольшой пример использования GAPI вместе с CodeIgniter. В примере я получаю список словосочетаний, по которым пользователи пользователи переходили на страницы сайта, а так же количество переходов и показатель отказов.

$this->load->library('ga_api');
$this->load->config('ga_api');
		
$ga_profile_id = $this->config->item('ga_profile_id');
$dimensions = array('pagePath', 'keyword');
$metrics = array('pageviews', 'bounces');
$filter = "keyword != (not set) && pageviews > 10";
		
$this->ga_api->requestReportData($ga_profile_id,
	$dimensions,
	$metrics,
	array('-pageviews', 'bounces'),
	$filter,
	'',
	'',
	1,
	500
);
$gaResults = $this->ga_api->getResults();

$i = 1;
foreach($gaResults as $result)
{
	printf("%-4d %-80s %-80s %-40s %5d\n",
		$i++,
		$result->getPagePath(),
		$result->getKeyword(),
		$result->getPageviews(),
		$result->getBounces()
	);
}


Такая информация может быть полезна для просмотра статистики, подбора ключевых фраз.

Понравилась статья? Подпишись на RSS.

Советую почитать:

Google Analytics на вашем сайте
Асинхронная загрузка Google Analytics

Применение CSS стилейСкрытые возможности jQuery

Комментарии

Здесь пока никто не писал.