gradosevic / easy-ga
PHP Google Analytics库,使用简单
Requires
Requires (Dev)
- phpunit/phpunit: 3.7.*
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许可证