Ottimizzazione Siti Internet | Programmatore PHP MySQL AJAX esperto nell'elaborazione delle Google Analytics | API Google Analytics | Sviluppo Siti Internet Ottimizzati | Sviluppo Siti Dinamici
Guida alle API di Google Analytics
Scritto da: Daniele Tabacco | Categoria: Programmatore AJAX|commenti Commenti: (0)

Come Programmatore PHP MySQL AJAX sono sempre stato attento all'Ottimizzazione di Siti Internet e di Applicazioni Web al fine di supportare attività di Marketing, Promozione e Visibilità che possano rendere un progetto vincente.
Nessuna delle attività potrebbe essere sviluppata e supportata senza un costante e intelligente utilizzo delle Google Analytics le statistiche di Google, che consultate nel giusto modo permettono la profilazione dei propri visitatori ed essere decisive nella decisione delle strategie commerciali.
Come Programmatore PHP in questa guida voglio proporre un un esempio per l'utilizzo delle API Google Analytics che consentono con PHP o altri linguaggi lato server di estrapolare i dati statistici ed elaborarli in modo da renderli visibili all'utente.
Quest'esempio ovviamente può essere ampliato e modificato da qualsiasi Programmatore PHP che ovviamente può renderlo più complesso ed elaborato, lavorando sui dati estrapolati e fornendo a video i risultati attesi.
Nell'esempio, visibile solo se abbiamo a disposizione un account Google Analytics grazie alle API e a PHP mostreremo a video le 10 pagine più visitate nel periodo selezionato dall'utente, ma per maggiori dettagli vi rimando alla documentazione consultabile a quest'indirizzo.

L'esempio è composto da due file che dovrà sviluppare il Programmatore PHP e/o Programmatore AJAX il primo file quello JAVASCRIPT si occupa del login alle statistiche e dell'estrapolazione delle informazioni:

// Carico la libreria Javascript di Google
google.load('gdata', '1.x', {packages: ['analytics']});

// Inizializzo la funzione di callback.
google.setOnLoadCallback(init);

// Creo un nuovo oggetto AnalyticsService e carico
// il bottone di autenticazione qual'ora non fossi loggato
function init() {
myService = new google.gdata.analytics.AnalyticsService('gaExportAPI_acctSample_v1.0');
scope = 'https://www.google.com/analytics/feeds';
var button = document.getElementById('authButton');

//Login o Logout
button.onclick = function() {
if (!google.accounts.user.checkLogin(scope)) {
google.accounts.user.login(scope);
} else {
google.accounts.user.logout();
getStatus();
}
}
getStatus();
}

//La funzione getStatus verifica se sono o meno loggato, quindi lo stato dell'utente
function getStatus() {
var getAccountButton = document.getElementById('getAccount');
getAccountButton.onclick = getAccountFeed;

var getDataButton = document.getElementById('getData');
getDataButton.onclick = getDataFeed;

var dataControls = document.getElementById('dataControls');
var loginButton = document.getElementById('authButton');
if (!google.accounts.user.checkLogin(scope)) {
dataControls.style.display = 'none';
loginButton.innerHTML = 'Accedi a Google Analytics';
} else {
dataControls.style.display = 'block'
loginButton.innerHTML = 'Logout';
}
}

//Metodo Main che serve a richiamare i dati Analytics dell'account
function getAccountFeed() {
var myFeedUri =
'https://www.google.com/analytics/feeds/accounts/default?max-results=50';
myService.getAccountFeed(myFeedUri, handleAccountFeed, handleError);
}

//Questa funzione richiama in HTML quelli che i dati dell'account
//cioè tutti i siti associati all'account analytics)
function handleAccountFeed(result) {

var entries = result.feed.getEntries();

// creo la tabella HTML
var outputTable = ['<table><tr>',
'<th>Nome Account</th>',
'<th>Nome Profilo</th>',
'<th>ID Profilo</th>',
'<th>ID Google Analytics</th></tr>'];

// Scorrimento degli elementi da pubblicare
for (var i = 0, entry; entry = entries[i]; ++i) {

// Add a row in the HTML Table array for each value.
var row = [
entry.getPropertyValue('ga:AccountName'),
entry.getTitle().getText(),
entry.getPropertyValue('ga:ProfileId'),
entry.getTableId().getValue()
].join('</td><td>');
outputTable.push('<tr><td>', row, '</td></tr>');
}
outputTable.push('</table>');

// pubblico la tabella
document.getElementById('outputDiv').innerHTML =
outputTable.join('');
}

//Questa invece e la funzione di Main per richiamare i dati sulle pagine più viste
function getDataFeed() {
var myFeedUri = 'https://www.google.com/analytics/feeds/data' +
'?start-date=' + document.getElementById('start').value +
'&end-date=' + document.getElementById('end').value +
'&dimensions=ga:pageTitle,ga:pagePath' +
'&metrics=ga:pageviews' +
'&sort=-ga:pageviews' +
'&max-results=10' +
'&ids=' + document.getElementById('tableId').value;

myService.getDataFeed(myFeedUri, handleDataFeed, handleError);
}

//Questa funzione costruisce con i dati la tabella da visualizzare a schermo.
function handleDataFeed(result) {

var entries = result.feed.getEntries();

var outputTable = ['<table><tr>',
'<th>Title Pagina</th>',
'<th>URL della Pagina</th>',
'<th>Visite della Pagina</th></tr>'];

for (var i = 0, entry; entry = entries[i]; ++i) {

var row = [
entry.getValueOf('ga:pageTitle'),
entry.getValueOf('ga:pagePath'),
entry.getValueOf('ga:pageviews')
].join('</td><td>');
outputTable.push('<tr><td>', row, '</td></tr>');
}
outputTable.push('</table>');

document.getElementById('outputDiv').innerHTML =
outputTable.join('');
}

//Funzione di gestione e visualizzazione degli errori
function handleError(e) {
var error = "E' stato riscontrato un errore!\n";
if (e.cause) {
error += e.cause.status;
} else {
error.message;
}
alert(error);
}

Il secondo file quello semplice PHP (ma che potrebbe essere sviluppato anche in altri linguaggi) si occupa semplicemente di richiamare le funzioni e di mostrare con AJAX i dati a video:

<h3>Esempio di API Google Analytics</h3>
<button id="authButton">Caricamento...</button>
<div id="dataControls" style="display:none">
<p>
Recupera i primi 50 profili associati al tuo Account Google Analytics:
<button id="getAccount">Mostra i profili</button>
</p>
<p>
Mostrami le 10 pagine più viste per l'account
<input type="text" id="tableId"/> (ID Google Analytics)
dal
<input type="text" id="start" value="2010-04-01"/>
al
<input type="text" id="end" value="2010-04-02"/>
<button id="getData">Mostra i Dati</button>
</p>
</div>
<div id="outputDiv"></div>
<img src="dummy.gif" style="display:none" alt="required for Google Data"/>


Se avete a disposizione un Account Google Analytics con delle statistiche potete consultare l'esempio a quest'indirizzo: (Guarda l'Esempio)

Commenti:
.Nessun commento Presente.


(non visibile)







Captcha
Copia i caratteri che vedi sopra:

Tags: | torna su


linkedIn


Contattami su Skype:
Il mio stato

Archivio Articoli:

Cerchi un Programmatore PHP con esperienza consolidata, già molte aziende a Napoli, Milano, Roma e Ferrara si sono affidate a me. Contattami per una Consulenza Gratuita, per Realizzare Applicazioni Web o Sviluppare Siti Internet e Creare Portali Dinamici.

Risorse utili per PHP:


Partners & Consigliati:

NGMWeb Hosting & Servizi

MioMotore Directory Gratis

ADServer Gestione Banner

MiniSito Ottimizzato NGMWeb.net



Collaborazioni:


antoniomaresca


ngmweb


cocreando
 
Daniele Tabacco - Questo sito e' interamente realizzato da me secondo gli standard del W3C - css valido w3c css valido xhtml