gradosevic/easy-ga

PHP Google Analytics库,使用简单

1.0 2016-04-21 13:45 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:31:02 UTC


README

PHP Google Analytics库,快速简便使用

#关于本库是为了那些希望用最少的时间开始使用Google Analytics Measurement Protocol的人而创建的。它基本上是一个用于theiconic/php-ga-measurement-protocol的封装,具有易于使用的对象。

有关API的更多信息,请参阅

#安装

#####composer require gradosevic/easy-ga

##支持的功能

  • 发送事件
  • 发送页面浏览量
  • 发送自定义数据
  • 发送交易
  • 发送异常

##配置

####最小化

$config = [
  'tracking_id' => 'UA-XXXXXXXX-1'
];

$config = 'UA-XXXXXXXX-1';

####默认

$config = [
    'tracking_id' => '',
    'protocol_version' => 1,
    'client_id' => 1,
    'user_id' => 1,
    'is_async' => true
];

##发送事件

####发送简单事件

use Gradosevic\EasyGA\Analytics;

Analytics::create($config)
    ->event('Simple Event Group', 'Simple Event Action')
    ->send();

这就完成了!

####使用构造函数发送完整事件

Analytics::create($config)
    ->event('Event Constructor', 'Event Constr-Action', 'Event Constr-Label', 45)
    ->send();

####使用事件类方法发送完整事件

Analytics::create($config)
    ->event()
    ->setCategory('Event Methods')
    ->setAction('Event Methods-Action')
    ->setLabel('Event Methods-Label')
    ->setValue(11)
    ->send();

##发送页面浏览量

####最小化

Analytics::create($config)
    ->page('/simple/page/view', 'Simple Page View')
    ->send();

####完整

$path = '/document/page/from/methods';
$title = 'Page Complete From Methods';
$hostname = 'mydomain.com';
$referrer = 'myblog.com';

Analytics::create($config)
    ->page()
    ->setDocumentPath($path)
    ->setDocumentTitle($title)
    ->setDocumentHostName($hostname)
    ->setDocumentReferrer($referrer)
    ->send();

##发送自定义数据为了发送自定义数据,我们首先需要在Google Analytics中定义它

  • 登录Google Analytics
  • 转到“管理”标签页
  • 选择帐户
  • 在“属性”列中,点击自定义定义->自定义维度
  • 点击+新建自定义维度,给它一个名称,范围 -> 点击确定并确保它是激活的
  • 点击创建
  • 记住索引(它将在Easy GA中使用)
  • 点击自定义定义->自定义度量
  • 点击+新建自定义维度,给它一个名称,范围 -> 点击确定,类型 -> 整数,确保它是激活的
  • 点击创建
  • 我们已创建索引为1的自定义维度。为新数据重复此过程
Analytics::create($config)
    ->event()
    ->setCategory('Custom Data')
    ->setAction('Custom Data Action')
    ->setLabel('Sent Custom Values')
    ->setCustomDimension('custom value a', 1) // Index is 1
    ->setCustomDimension('custom value b', 2) // Index is 2
    ->setValue(9) // Event value
    ->send();

要读取自定义数据

  • 转到报告 -> 行为 -> 事件 -> 概览
  • 点击事件操作
  • 点击包含自定义数据的事件操作:“自定义数据操作”(在我们的例子中)
  • 点击次要维度下拉列表
  • 选择自定义维度 -> [你的自定义维度名称]
  • 应显示具有自定义数据的点击次数

##发送交易

####最小化

use Gradosevic\EasyGA\Analytics;
use Gradosevic\EasyGA\Product;

Analytics::create($config)
    ->transaction('TransactionID-2342541')
    ->setProduct(Product::create('MINPRODUCT-56471', 'Min Product', 1.99))
    ->sendPurchase();

####完整

$transactionID = 2315;
$affiliation = 'Affiliate Name';
$revenue = 456.99;
$tax = 10.0;
$shipping = 9.99;
$coupon = '20OFF';

Analytics::create($config)
    ->transaction($transactionID, $affiliation, $revenue, $tax, $shipping, $coupon)
    ->sendPurchase();

####遍历产品(示例)如果你需要遍历产品,你应该像这样解耦Easy GA

$products = array(); //Load your products
$transaction = Analytics::create($config)->transaction('2384287');

foreach($products as $product){
    $transaction->setProduct(Product::create($product['sku'], $product['name'], $product['price']))
}

$transaction->sendPurchase();

####产品属性产品具有以下属性

  • category
  • brand
  • coupon
  • name
  • position
  • price
  • quantity
  • sku
  • variant

要设置所有产品的属性,创建新的产品对象并使用setter方法

$product = (new Product())
    ->setCategory('Product category')
    ->setBrand('Product brand')
     // ...
    ->setVariant($variant);

要读取交易

  • 等待大约10分钟或更少的时间以查看数据
  • 转到报告 -> 转化 -> 电子商务 -> 概览
  • 点击右侧的时间过滤器(按小时、按日)和下面的收入来源以查看数据
  • 点击电子商务下的其他选项以查看其他报告
  • 重要:有时数据不会显示,你需要点击一些过滤器来显示它(时间过滤器或下面的链接)

##发送异常

Analytics::create($config)
    ->exception('IOException')
    ->send();

要在仪表板上显示自定义异常,请遵循此教程

##高级:轻松访问所有API方法Easy GA对象提供发送给GA的最简单的数据集。如果您需要设置更多数据,您始终可以通过使用api()方法来访问底层库API及其所有方法,在代码中需要时简单调用即可。示例:使用Easy GA获取所需数据,并从API添加其他数据。

Analytics::create($config)
            // Using Easy GA Event constructor to pass data
            ->event('Advanced Event Group', 'Advanced Event Action')

            // Using Easy GA class methods
            ->setLabel('Event wcd label')

            // The moment when we switch to API
            ->api()

            // Using API method
            ->setDocumentReferrer('referrer.com')

            // Using API method
            ->setDocumentPath('/event/document/path')

            // Important: We can not use Easy GA send() method any more.
            // We have to use API send method now.
            ->sendEvent();

##使用此库的其他示例,请参阅库中的测试

许可证

Easy GA遵循MIT许可证

作者:Goran Radosevic