revstrat / bloganalytics
抓取Google Analytics数据,并提供更新数据的工作队列
0.7
2019-01-08 13:12 UTC
Requires
- google/apiclient: ^2.0
- silverstripe/blog: ^3.2
- silverstripe/cms: ^4
- silverstripe/framework: ^4
- symbiote/silverstripe-queuedjobs: ^4.2
README
从Google Analytics抓取页面和博客标签的数据
要求
- SilverStripe ^4
- [SilverStripe Blog ^3.2 (用于标签流量)] (https://github.com/silverstripe/silverstripe-blog)
- SilverStripe Queued Jobs ^4.2
文档
SilverStripe BlogAnalytics模块使用Google服务帐户与Google Analytics交互。
- 在此处设置服务帐户。您将收到如下配置
{ "type": "service_account", "project_id": "YOUR GOOGLE API PROJET ID", "private_key_id": "YOUR PRIVATE KEY ID", "private_key": "YOUR PRIVATE KEY", "client_email": "EMAIL ADDRESS FOR THE SERVICE ACCOUNT", "client_id": "CLIENT ID", "auth_uri": "AUTH URI", "token_uri": "TOKEN URI", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "CERT URL" }
- 将帐户的电子邮件地址添加到Google Analytics
- 获取您要抓取的Analytics视图的视图ID
- 对配置进行base64编码
- 将配置添加到您的环境中
GASERVICE="BASE64 ENCODED JSON CONFIGURATION FILE CONTENTS (to avoid escaping values in the private key)" GAVIEW="VIEW ID" GASTART="7daysago" GAEND="today" GAMINCUTOFF="100" # Don't track pages with fewer views than this
- 使用
composer require revstrat\bloganalytics
安装 - 运行
/dev/build?flush=all
。 - 创建一个类型为RevStrat\BlogAnalytics\UpdateTrafficData的工作队列并运行它。任务将在完成后3小时自行调度
模板使用
示例
TopTags, TopSiteTree, TopBlogPosts每个返回一个列表,其中目标对象位于"Item"下,流量计数位于"Traffic"下。
每个都可以接受一个参数来覆盖默认的结果计数限制。
<h3>Top Tags</h3>
<% loop TopTags(6) %>
$Item.Title, $Traffic<br />
<% end_loop %>
<% loop TopSiteTree %>
$Item.Title, $Traffic<br />
<% end_loop %>
<% loop TopBlogPosts %>
$Item.Title, $Traffic<br />
<% end_loop %>