blogスタッフブログ
HOME > スタッフブログ > CMS >PowerCMS XとGoogle Analytics(GA4)でランキングを表示

PowerCMS XとGoogle Analytics(GA4)でランキングを表示

以前私が書いた記事「PowerCMS XとGoogle Analyticsでランキングを表示」のGA4対応についてよくご質問を頂きます。回答は「APIを介してGoogle Analyticsのデータを取得しているので、プラグイン内のAPI操作を行うコードを書き換えるだけで対応できる」となります。

コマンドラインで試行

Google アナリティクス Data API v1」を利用するとGoogle アナリティクス 4(GA4)のレポートデータにアクセスできるとあります。(ただし2022年11月25日現在はベータ版です。)そこで「APIクイックスタート」の手順に沿って手続きを進めたところ、GA4に格納されているページビューを取得することができました。

<?php
require 'vendor/autoload.php';

// https://developers.gmo.jp/23074/
putenv('GOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json');

use Google\Analytics\Data\V1beta\BetaAnalyticsDataClient;
use Google\Analytics\Data\V1beta\DateRange;
use Google\Analytics\Data\V1beta\Dimension;
use Google\Analytics\Data\V1beta\Metric;

/**
 * TODO(developer): Replace this variable with your Google Analytics 4
 *   property ID before running the sample.
 */
$property_id = '286786598';

// Using a default constructor instructs the client to use the credentials
// specified in GOOGLE_APPLICATION_CREDENTIALS environment variable.
$client = new BetaAnalyticsDataClient();

// Make an API call.
$response = $client->runReport([
    'property' => 'properties/' . $property_id,
    'dateRanges' => [
        new DateRange([
            'start_date' => '2022-10-28',
            'end_date' => '2022-11-24',
        ]),
    ],
    'dimensions' => [
        new Dimension([
            'name' => 'pageTitle',
        ]),
    ],
    'metrics' => [
        new Metric([
            'name' => 'screenPageViews',
        ]),
    ],
]);

// Print results of an API call.
print 'Report result: ' . PHP_EOL;

foreach ($response->getRows() as $row) {
    print $row->getDimensionValues()[0]->getValue()
        . ' ' . $row->getMetricValues()[0]->getValue() . PHP_EOL;
}

ターミナルでPHPを実行したところ、以下のようにGA4に格納されているページタイトルと表示回数が取得できました。この結果はブラウザでGA4の「ページとスクリーン: ページタイトルとスクリーンクラス」にアクセスして表示される結果と一致していました。
サンプルコード実行しGA4に格納されているページタイトルと表示回数を取得した結果の画面

最近の記事

カテゴリ

アーカイブ

スタッフ別