471 人が現在オンライン
471 人が現在オンライン
Google アナリティクスの Google タグマネージャを含む計測の設定やトラブルシュートなどについて、ユーザー同士で意見交換ができます。解析を通して浮かんだ質問やアイディアを投げかけ合ってより知識を高めていきましょう。
ガイドを表示
star_border
返信

phpでコンテンツヘッダーに画像を設定した時のトラッキングコード設置について

[ 編集済み ]
mas
初級者 ✭ ✭

お世話になります。

 

phpでコンテンツヘッダーに画像タイプを設定した時の

トラッキングコード設置方法についてお聞きしたいです。

 

例えば、

・test.php

 header('Content-type: image/gif')のように画像を出力するようにして

・test.html

 <img src="test.php" />と画像を読み込み出力するファイルがあった場合

 

test.php側でアクセス集計されるようにトラッキングコードを設置したいです。

通常のjavascriptコードを埋め込む方法で設置できませんし、

Measurement Protocol の画像ピクセルを

<img src="http://www.google-analytics.com/collect?v=1&tid={$tid}&cid={$cid}&t=pageview&dp={$uri}">

のように記載することもできません。

 

上記のような場合に、トラッキングさせる方法を教えていただけませんでしょうか。

1 件の受理された解決策

受理された解決策
ベストアンサーのマーク済み.
解決策
トピック作成者masさんが付与
9月

Re: phpでコンテンツヘッダーに画像を設定した時のトラッキングコード設置について

[ 編集済み ]
mas
初級者 ✭ ✭

自己解決しました

以下のコードを記載した外部ファイルを準備する
・function_analytics.php

<?php
if (! function_exists('notify_to_analytics')) {
function notify_to_analytics($tid, $target_page)
{
$params = [];
$params['v'] = '1';
$params['t'] = 'pageview';
$params['tid'] = $tid;
$params['cid'] = sprintf(
'%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0x0fff) | 0x4000,
mt_rand(0, 0x3fff) | 0x8000,
mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0xffff)
);
$params['dh'] = $_SERVER['HOST_NAME'];
$params['dp'] = '/'.$target_page;
$params['dt'] = $target_page;
$params = http_build_query($params, '', '&');
$header = [
'Content-Type: application/x-www-form-urlencoded',
'Content-Length: '.strlen($params)
];
$context = [
'http' => [
'method' => 'POST',
'header' => implode("\r\n", $header),
'content' => $params
]
];
$analyticsUrl = 'http://www.google-analytics.com/collect';
file_get_contents($analyticsUrl, false, stream_context_create($context));
}
}
?>


実行側で関数を呼出す。
・test.php

$tid = "UA-XXXXXXXXX-X";
$target_page = "test.php"; //先頭の/は無しで指定
notify_to_analytics($tid, $target_page);


この手順でanalyticsにてアクセス検知することができました。

元の投稿で解決策を見る

ベストアンサーのマーク済み.
解決策
トピック作成者masさんが付与
9月

Re: phpでコンテンツヘッダーに画像を設定した時のトラッキングコード設置について

[ 編集済み ]
mas
初級者 ✭ ✭

自己解決しました

以下のコードを記載した外部ファイルを準備する
・function_analytics.php

<?php
if (! function_exists('notify_to_analytics')) {
function notify_to_analytics($tid, $target_page)
{
$params = [];
$params['v'] = '1';
$params['t'] = 'pageview';
$params['tid'] = $tid;
$params['cid'] = sprintf(
'%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0x0fff) | 0x4000,
mt_rand(0, 0x3fff) | 0x8000,
mt_rand(0, 0xffff),
mt_rand(0, 0xffff),
mt_rand(0, 0xffff)
);
$params['dh'] = $_SERVER['HOST_NAME'];
$params['dp'] = '/'.$target_page;
$params['dt'] = $target_page;
$params = http_build_query($params, '', '&');
$header = [
'Content-Type: application/x-www-form-urlencoded',
'Content-Length: '.strlen($params)
];
$context = [
'http' => [
'method' => 'POST',
'header' => implode("\r\n", $header),
'content' => $params
]
];
$analyticsUrl = 'http://www.google-analytics.com/collect';
file_get_contents($analyticsUrl, false, stream_context_create($context));
}
}
?>


実行側で関数を呼出す。
・test.php

$tid = "UA-XXXXXXXXX-X";
$target_page = "test.php"; //先頭の/は無しで指定
notify_to_analytics($tid, $target_page);


この手順でanalyticsにてアクセス検知することができました。

Re: phpでコンテンツヘッダーに画像を設定した時のトラッキングコード設置について

レジェンド
こんにちは。
情報共有ありがとうございます。
------
文責:カグア!