ウェブでの実装

注: ブロックの数にかかわらず、広告リクエストは 1 ページにつき 1 回のみ行う必要があります。

重要: このコードを使用する前に利用規約をお読みください

このコードを使用するには、AdSense カスタム検索広告を使用するための有効な権限を持つ AdSense アカウントが必要です。

概要

AdSense カスタム検索広告は、次の 3 つのステップでサイトに実装できます。

ステップ 1: AdSense でカスタム検索スタイルを作成する

ログインしたら、[検索向け広告] を展開し、[検索スタイル] をクリックします。ここから、新しいスタイルの作成や既存のスタイルの更新を行うことができます。

ステップ 2: コードを設定する

[Get Code](Embed)をクリックします。検索ページの広告コンテナと一致するように広告コンテナを設定します。

ステップ 3: コードを実装する

コード生成ツールからコードをコピーして、ページに貼り付け、query パラメータを忘れずに更新します。広告を正しく読み込むには、head タグで生成されたコードをサイトの head タグ内に配置する必要があります。広告ユニット 1 のコードには、ページ上のすべての広告ユニットの設定が含まれます。別の広告ユニットを追加する場合、必要な作業は対応する広告ユニット <div> をページ内の広告が表示される場所に配置することだけです。

最もよく使用される機能はコード生成ツールに用意されています。その他のパラメータについては、リファレンス セクションをご覧ください。参照セクションには、ページ上のすべての広告ユニットに適用されるページ単位のオプションと、個々の広告ユニットに適用されるすべてのユニット単位のオプションが含まれています。

サンプルコード

広告の非同期読み込み

生成されるコードは非同期です。実際に機能する非同期の広告読み込みのサンプルを以下に示します。このサンプルは新しいタブで開くことができます。その際、必ずご自身のクライアント ID を入力してください。

<html>
<head>

<script async="async" src="https://www.google.com/adsense/search/ads.js"></script>

<script type="text/javascript" charset="utf-8">
  (function(g,o){g[o]=g[o]||function(){(g[o]['q']=g[o]['q']||[]).push(
  arguments)},g[o]['t']=1*new Date})(window,'_googCsa');
</script>

</head>

<body>

<div id="afscontainer1"></div>
<script type="text/javascript" charset="utf-8">

var pageOptions = {
  'pubId' : 'test client ID', // Enter your own client-ID here
  'query' : 'flowers', // User query for this page
  'styleId': '7824176615' // Enter your own style ID here
};

var adblock1 = {
  'container' : 'afscontainer1',
  'width' : 700
};

var adblock2 = {
  'container' : 'afscontainer2',
  'width' : 700
};

_googCsa('ads', pageOptions, adblock1, adblock2);
</script>

<p>Search result 1</p>
<p>Search result 2</p>
<p>Search result 3</p>

<div id="afscontainer2"></div>
</body>
</html>

検索の関連する検索は、現在の検索語句に関連する検索語句を含むオーガニック ユニットです。このユニット上のリンクが新しい検索結果ページに移動します。

<html>
<head>

<script async="async" src="https://www.google.com/adsense/search/ads.js"></script>

<script type="text/javascript" charset="utf-8">
  (function(g,o){g[o]=g[o]||function(){(g[o]['q']=g[o]['q']||[]).push(
  arguments)},g[o]['t']=1*new Date})(window,'_googCsa');
</script>

</head>

<body>

<div id="afscontainer1"></div>
<script type="text/javascript" charset="utf-8">

var pageOptions = {
  'pubId': 'test client ID', // Enter your own client-ID here
  'query': 'flowers', // User query for this page
  'styleId': '1234567890', // Enter your own style ID here
  'resultsPageBaseUrl': '//www.example.com/search', // Enter your own base URL here
  'resultsPageQueryParam': 'query' // Enter your own query parameter here
};

var adblock = {
  'container': 'afscontainer1',
  'number': 3,
  'width': 700
};

var rsblock = {
  'container': 'afscontainer2',
  'relatedSearches': 6,
  'width': 500
};

_googCsa('ads', pageOptions, adblock, rsblock);
</script>

<p>Search result 1</p>
<p>Search result 2</p>
<p>Search result 3</p>

<div id="afscontainer2"></div>
</body>
</html>

コンテンツ ページの関連する検索では、ページのコンテンツに関連する検索キーワードが表示されます。 これにより、ユーザーは検索広告やサイトのナビゲーションを利用し、関連するトピックについて調べることができます。予期しない結果が生じるため、コンテンツ ページの関連する検索には「query」パラメータを使用しないでください。

<html>
<head>

<script async="async" src="https://www.google.com/adsense/search/ads.js"></script>

<script type="text/javascript" charset="utf-8">
  (function(g,o){g[o]=g[o]||function(){(g[o]['q']=g[o]['q']||[]).push(
  arguments)},g[o]['t']=1*new Date})(window,'_googCsa');
</script>

</head>

<body>

<p>Page content</p>

<div id="afscontainer1"></div>

<script type="text/javascript" charset="utf-8">

var pageOptions = {
  'pubId': 'test client ID', // Enter your own client-ID here
  'relatedSearchTargeting': 'content', // Must use 'content'
  'hl': 'en', // The preferred language for related terms (default to 'en' if not specified)
  'styleId': '1234567890', // Enter your style ID
  'resultsPageBaseUrl': '//www.example.com/search', // Enter the base URL of your results page
  'resultsPageQueryParam': 'query', // Specify the query parameter on your results page
  'terms': 'term a,term b', // Optionally provide your own related terms in a comma-delimited list
  'referrerAdCreative': 'example ad title' // Only used when a user clicked an ad to arrive here
};

var rsblock1 = {
  'container': 'afscontainer1',
  'relatedSearches': 6
};

_googCsa('relatedsearch', pageOptions, rsblock1);
</script>

<p>More page content</p>

</body>
</html>

おすすめできない対処方法

AdSense カスタム検索広告の導入にあたっては、すべてのパブリッシャー様がガイドラインに準拠することをおすすめします。また、広告レンダリングの妨げとなり、予期しない結果や最適なパフォーマンスの低下を招くような実装方法は避けることをおすすめします。

  • 無限スクロールを実装している場合を除き、ページから複数の広告呼び出しを行わない
  • 広告のレンダリング前またはレンダリング後に広告ブロックを非表示にしない
  • ページ内で広告ブロックを移動しないでください。
  • ページに表示する必要以上の広告ブロック数をリクエストしない
  • 広告ブロックの DOM は操作しない
  • 独自の遅延読み込みを実装しないでください(Google の遅延読み込みを使用してください)。
  • サイトの Google の JS リソースをキャッシュしない
  • 予期しない結果が生じるため、コンテンツ ページの関連する検索には「query」パラメータを使用しないでください。