Google Analytics · Tag Manager
従来のアナリティクスから Google Analytics 4 へ
_setDomainName、_link、_linkByPost のコードを削除し、Google タグを設置して、クロスドメイン測定と除外する参照元を現在の方法で設定します。
サンプル ドメイン · 実際のサービスではありません
example-petstore.com は、Google アナリティクス、Search Console、構造化データに関する Google のドキュメントで、読者自身のウェブサイトの代わりとして使われたサンプル ドメインです。ショップ、API、検索機能はありません。この名前がコードや設定に含まれている場合は、自社のドメインに置き換えてください。
example-petstore.com を指すコードからのリクエストは、実際のサービスではなくこのサーバーに届きます。リクエストに含まれる API キー、アクセス トークン、パスワード、セッション Cookie もすべて届いています。これらの認証情報は漏えいしたものとして扱ってください。
各ガイドは 1 つの作業を扱います。このドメインを見つけた場所に合うグループを選んでください。
Google のサンプルから写された Analytics、構造化データ、Search Console の設定。
Google Analytics · Tag Manager
_setDomainName、_link、_linkByPost のコードを削除し、Google タグを設置して、クロスドメイン測定と除外する参照元を現在の方法で設定します。
構造化データ
query.example-petstore.com を使った検索ボックスのマークアップの役割、Google がそれを廃止した理由、現在使用すべき WebSite マークアップを説明します。
Search Console
301 リダイレクトとChange of Address ツールを使い、canonical、サイトマップ、hreflang にサンプルのアドレスを残さずにサイトを完全に移転する方法です。
見知らぬサーバーに届くことのない API クライアント、モックサーバー、サンプル値。
API · SDK
ベース URL をコードから切り離して実際のサービスを指すようにし、サンプルのアドレスが本番環境に届かないようチェックを追加します。
テスト · API
他人のものかもしれないアドレスではなく、Prism、WireMock、MSW、json-server を相手に開発・テストします。
API · OpenAPI
Swagger Petstore サンプル API の本当のベース URL、動作するリクエスト例、テスト用キー、Docker で自分のコピーを動かす方法。
ドキュメント
予約済みのドメイン、IP 範囲、AS 番号、MAC アドレス、電話番号、テスト用カード。コピーされても無害な例のために。
キー、トークン、パスワードをここに送信した、または Git にコミットした場合。
セキュリティ
キー、トークン、パスワードをサンプル ドメインに送信してしまった場合の対処法です。主要なプロバイダーの無効化ページへの直接リンクとともに、無効化と再発行の手順を説明します。
セキュリティ · Git
キーをコミットしてしまった場合の対処法。無効化し、git-filter-repo で履歴から削除し、GitHub を整理して次の漏えいを防ぎます。
名前の由来、予約済みの名前、このサイトで使う用語。
経緯
Google が example-petstore.com と example-commerce-host.com をいつ、どこで使ったか。2009年から現在まで、アーカイブの出典付き。
リファレンス
ドキュメント用に予約された名前、このドメインのような類似名に実際のトラフィックが届く理由、代わりに使う名前。
リファレンス
_setDomainName、linker、_gl、除外する参照元、SearchAction、410 Gone の短い説明。
以下の各サンプルでは、公開当時の古いスニペットと、代わりに使用するコードを示しています。ハイライトされた部分が置き換える箇所です。日付とアーカイブされた出典は経緯の全文にまとめています。
Google Analytics · 2009–2024
従来のアナリティクス(ga.js)で複数のドメインをトラッキングする Google のガイドでは、example-petstore.com のペットショップ、dogs.example-petstore.com などのサブドメイン、example-commerce-host.com のショッピング カートが使われていました。
古いサンプル
_gaq.push(['_setAccount', 'UA-12345-1']);
_gaq.push(['_setDomainName', 'example-petstore.com']);
_gaq.push(['_setAllowLinker', true]);
<a href="http://dogs.example-petstore.com/intro.html"
onclick="_gaq.push(['_link', 'http://dogs.example-petstore.com/intro.html']); return false;">See my pet store</a>
従来のアナリティクスとユニバーサル アナリティクスは、データを収集しなくなりました。サンプルのリンクも含めてこのコードを削除し、Google Analytics 4 用の Google タグを設置してください。クロスドメイン測定はその後、管理画面で設定します。
代わりに使用するコード
<!-- Google tag (gtag.js) for Google Analytics 4 -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXXXX');
</script>
構造化データ · 2014–2015
サイトリンク検索ボックスに関する Google の最初のサンプルは、テーマ、フォーラム ソフトウェア、SEO ガイドにコピーされました。query.example-petstore.com は、ペットショップの検索結果ページとして作られた架空のアドレスです。
古いサンプル
{
"@context": "https://schema.org",
"@type": "WebSite",
"url": "https://www.example-petstore.com/",
"potentialAction": {
"@type": "SearchAction",
"target": "https://query.example-petstore.com/search?q={search_term_string}",
"query-input": "required name=search_term_string"
}
}
最初のバージョン(2014年9月)では https://host.example-petstore.com/search?q={search_term} が使われていました。Google は 2024年11月21日にサイトリンク検索ボックスの表示を終了しました。残っているマークアップがエラーの原因になることはありませんが、url は自社のものにしてください。シンプルな WebSite ブロックは、検索結果でのサイト名の表示に引き続き役立ちます。
代わりに使用するコード
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Your site name",
"url": "https://www.example.com/"
}
</script>
Search Console · 2015–2019
Search Console の Change of Address ツールのヘルプでは、http://fish.example-petstore.com から http://example.com または http://example-petstore.com への移転が例として使われていました。このツールは、同じ Google アカウントで所有するドメイン単位のプロパティ(ドメイン プロパティ、または https://example.com/ のようなルートの URL プレフィックス プロパティ)の間でのみ機能するため、canonical、サイトマップ、hreflang も含め、サンプルのアドレスは自社のものに置き換える必要があります。
API · スクリプト
api.example-petstore.com/v2/pet などのアドレスへのリクエストは、このドメインをベース URL として使用しているコードから送られています。これらのリクエストには、JSON による説明とともに 410 Gone が返されます。このドメインは、petstore.swagger.io の Swagger Petstore サンプル API とは関係ありません。
代わりに使用するコード: アドレスを設定から読み込む
# Python: read the address from configuration, not from the code
import os
BASE_URL = os.environ["API_BASE_URL"]
// JavaScript / Node.js
const baseURL = process.env.API_BASE_URL;
// PHP 8
$baseUrl = getenv('API_BASE_URL') ?: throw new RuntimeException('API_BASE_URL is not set');
example-petstore と example-commerce-host を検索します。| 場所 | 表示される内容 | 対処方法 |
|---|---|---|
従来のアナリティクス(ga.js)またはユニバーサル アナリティクス(analytics.js) | これらの名前を含む _setDomainName、_setAllowLinker、_link、_linkByPost、または ga('linker:autoLink', …) | onclick / onsubmit ハンドラやサンプルのリンクも含め、古いスニペットをすべて削除し、Google Analytics 4 用の Google タグを設置してください。標準のユニバーサル アナリティクス プロパティは 2023年7月1日に、360 プロパティは 2024年7月1日にデータの処理を停止しました。 Universal Analytics has been replaced |
| Google Analytics 4 | ドメインリストにこれらの名前がある、またはレポートに自己参照が表示される | Admin › Data collection and modification › Data streams › 対象のウェブ ストリーム › Configure tag settings › Configure your domains で、自社のドメインだけを残してください。不要な参照元は List unwanted referrals に追加します。 Set up cross-domain measurement |
コード内の Google タグ(gtag.js) | gtag('set', 'linker', {'domains': ['example-petstore.com']}) またはハードコードされた cookie_domain | linker.domains には自社のドメインを指定してください。cookie_domain は省略するか、'auto' に設定します。 Measure activity across multiple domains |
| Google Tag Manager | Google タグのドメインリスト、または古いカスタム HTML タグ | Google tags › 対象のタグ › Show all › Configure your domains / List unwanted referrals を開きます。カスタム HTML タグと変数で古いスニペットを検索し、Preview でテストしてください。 Google tag settings in Tag Manager |
| 手動で追加した構造化データ(JSON-LD、microdata) | "url": "https://www.example-petstore.com/"、または query. や host.example-petstore.com を指す target | url には自社のホームページを、name には自社のサイト名を指定してください。SearchAction は削除してかまいません。Schema Markup Validator で確認してください(リッチリザルト テストはサイト名に対応していません)。 Site names in Google Search |
| Yoast SEO | サイトのスキーマ内の検索アクション | Yoast は自社のサイトアドレスを使用します。削除するには add_filter( 'disable_wpseo_json_ld_search', '__return_true' ); を追加します。 Yoast: SearchAction |
| Rank Math | サイトのスキーマ内の検索アクション | Rank Math は自社のサイトアドレスを使用します。削除するには、フィルター rank_math/json_ld/disable_search を使用します。 Rank Math: sitelinks search box schema |
| All in One SEO | サイトのスキーマ内の検索アクション | Search Appearance › Advanced › 「Enable Sitelinks Search Box」をオフにします。 AIOSEO: sitelinks search box |
| SEOPress | — | 検索ボックスのマークアップはバージョン 8.4(2024年12月)で削除されました。プラグインを更新してください。 SEOPress changelog |
| Search Console | サイト移転、canonical、サイトマップ、hreflang で使用されているサンプルのアドレス | Change of Address ツールは、同じ Google アカウントで所有するドメイン単位のプロパティ間でのみ機能します。301 リダイレクトは少なくとも 1 年間、できれば恒久的に維持してください(シグナル自体は 180 日間有効です)。自社サイトの canonical、サイトマップ、hreflang を修正してから、サイトマップを再送信してください。 Change of Address tool |
| API クライアント、SDK、スクリプト | これらの名前のいずれかを指すベース URL やホスト(多くの場合 Authorization ヘッダー付き) | ベース URL を設定(環境変数または設定ファイル)に移し、実際のサービスを指すようにしてください。ここに送信されたキーはすべて無効にしてください。 OWASP Secrets Management |
テンプレートやテーマファイルも含め、プロジェクト全体で次の 2 つの名前を検索してください。
grep -rniE "example-(petstore|commerce-host)\.com" .
コードに表示されない箇所も確認してください。ホームページのレンダリング後の HTML(ソースを表示して検索)、Google Tag Manager コンテナのカスタム HTML タグと変数、CMS やテーマの「カスタム head コード」欄、アナリティクス プラグインや SEO プラグインの設定です。
サンプル ドメインです。Google アナリティクス、Search Console、構造化データに関する Google のドキュメントで、読者自身のウェブサイトの代わりとして使われ、そこからチュートリアルにコピーされました。ショップ、API、検索機能はありません。
いいえ。ここでは何も販売しておらず、商品、アカウント、注文もありません。このドメインのどのアドレスにアクセスしても、このページが表示されます。
サンプルのアドレスがコピーされたまま置き換えられていないためです。古いトラッキング スニペットのリンク、構造化データ、Search Console の設定、API クライアントのベース URL などが考えられます。自社のドメインまたは実際のサービスに置き換えてください。
漏えいしたものとして扱ってください。発行したサービスで無効にし、新しいものを発行してコードの外で管理し、アドレスを修正したうえで、そのサービスのアクセスログを確認してください。キーを無効にできるのは、発行したサービスだけです。
サイトリンク検索ボックスに関する Google の 2014~2015年のサンプルで、ペットショップの検索結果ページとして作られた架空のアドレスです。Google はサイトの検索結果の下に検索ボックスを表示でき、検索語句が {search_term_string} に入った状態で、そのアドレスにユーザーが送られる仕組みでした。このアドレスは実在したことがなく、Google は 2024年11月に検索ボックスの表示を終了しました。
2009年3月です。Google が従来のアナリティクスのドキュメントを再編成した際、複数のドメインのトラッキングに関するガイドでペットショップとそのカートが登場しました。それ以前のバージョンのガイドでは使われていません。
いいえ。Swagger Petstore は petstore.swagger.io にある OpenAPI のサンプル API です。example-petstore.com は、Google のアナリティクスと SEO のドキュメントに由来します。
姉妹サンプル ドメインで、同じクロスドメインのサンプルに登場するサードパーティのショッピング カートです(example-commerce-host.com/example-petstore など)。example-commerce-host.com をご覧ください。