このプロジェクトについて
laravel-analytics は、Google Analytics Data API を使用して Google Analytics から分析データを取得するために Spatie によって開発された Laravel パッケージです。
## 機能
このパッケージは、いくつかの便利なメソッドを持つファサード `Spatie\Analytics\Facades\Analytics` を提供します:
- `fetchMostVisitedPages(Period $period, int $maxResults = 20)` — fullPageUrl、pageTitle、screenPageViews を返します
- `fetchVisitorsAndPageViews(Period $period)` — activeUsers と screenPageViews を返します
- `fetchVisitorsAndPageViewsByDate(Period $period)` — 行ごとに日付キーを追加します
- `fetchTotalVisitorsAndPageViews(Period $period)` — 日付ごとの合計を集計します
- `fetchTopReferrers(Period $period, int $maxResults = 20)` — pageReferrer と screenPageViews を返します
- `fetchUserTypes(Period $period)` — 新規ユーザー対リピーターを返します
- `fetchTopBrowsers(Period $period, int $maxResults = 10)` — browser と screenPageViews を返します
- `fetchTopCountries(Period $period, int $maxResults = 10)` — country と screenPageViews を返します
- `fetchTopOperatingSystems(Period $period, int $maxResults = 10)` — operatingSystem と screenPageViews を返します
- `get(Period $period, array $metrics, array $dimensions = [], ...)` — 並べ替え、ページネーション、ディメンションフィルタ、指標フィルタを使用した任意の GA4 クエリを実行します
すべてのメソッドは、配列の `Illuminate\Support\Collection` を返します。
## インストール
```bash
composer require spatie/laravel-analytics
```
オプションで設定ファイルを公開できます:
```bash
php artisan vendor:publish --tag="analytics-config"
```
`config/analytics.php` に公開された設定には以下が必要です:
- `property_id`: GA4 プロパティ ID
- `service_account_credentials_json`: サービスアカウントの JSON キーへのパス、または認証情報を含む配列
- `cache_lifetime_in_minutes`: デフォルトは 1440 分。0 に設定するとキャッシュが無効になります
- `cache.store` および基盤となるキャッシュのオプションのプレフィックス/有効期限
## 認証セットアップ
1. [Google Cloud Console](https://console.developers.google.com/apis) でプロジェクトを作成します
2. API ライブラリで **Google Analytics Data API** を有効にします
3. サービスアカウントを作成し、その JSON キーをダウンロードします
4. GA4 プロパティを、最低でも「分析」ロールでサービスアカウントのメールアドレスに共有します
5. JSON ファイルを安全に保存し、設定ファイルでそのパスを指定します
## 期間 (Periods)
`Spatie\Analytics\Period` クラスは以下をサポートしています:
```php
Period::days(7)
Period::months(6)
Period::create($startDate, $endDate) // Carbon インスタンスを受け付けます
```
## フェイクを使用したテスト
ファサードは、ユニットテストおよび機能テスト用の `fake` メソッドを提供します:
```php
use Spatie\Analytics\Facades\Analytics;
Analytics::fake();
// または定義済みのレスポンスを指定
Analytics::fake([
['pageTitle' => 'Home', 'activeUsers' => 10, 'screenPageViews' => 20],
]);
```
パッケージのテストは以下で実行できます:
```bash
vendor/bin/pest
```
## ライセンス
MIT ライセンス。詳細はリポジトリの LICENSE を参照してください。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.