网站实现

注意:无论有多少个块,每个网页都只能发出一个广告请求。

重要提示:在使用此代码之前,请先阅读条款及条件

要使用此代码,您必须拥有 AdSense 账号,并且该账号应具有使用 AdSense 自定义搜索广告的有效权限

概览

在您的网站上实现 AdSense 自定义搜索广告需要完成 3 个步骤:

第 1 步:在 AdSense 中创建自定义搜索广告样式

登录后,展开搜索广告,然后点击搜索广告的样式。您可以在此处创建新样式或更新现有样式。

第 2 步:配置代码

点击获取验证码图标 嵌入。 配置广告容器,使其与搜索页上的广告容器相匹配。

第 3 步:实现代码

从代码生成工具中复制代码,然后将其粘贴到您的网页上,并记得更新 query 参数。在 <head> 标记中生成的代码应放置在您网站的 <head> 标记中,以便广告正常加载。广告单元 1 的代码将包含网页上所有广告单元的设置。如需添加其他广告单元,只需在应展示广告的网页上放置相应的广告单元 <div> 即可。

代码生成工具中提供了最常用的功能,但参考部分中还提供了一些其他参数。参考部分包含所有网页级选项(适用于网页上的所有广告单元)以及所有单元级选项(适用于单个广告单元)。

示例代码

异步加载广告

生成的代码是异步的。下面展示了异步广告加载的完整工作示例。您可以在新标签页中打开此示例。请务必输入您自己的 client-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>

Google 搜索中的相关搜索是一种自然搜索单元,其中包含与当前搜索字词相关的搜索字词。此广告单元中的链接会指向新的搜索结果页。

<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
  'relatedSearchTargeting': 'query', // Must use 'query' for Related Search on Search pages
  '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”参数,因为这会导致意外结果。

注意:只有在 Google 抓取您的网页以确保字词与情境相关后,相关搜索字词才会展示在您的网站上。如果网页尚未被 Mediapartners-Google 抓取工具抓取,或者被阻止抓取(例如,被 robots.txt 阻止),我们将不会显示您提供给 Google 的建议的相关搜索字词。

内容中的相关搜索产品依赖于 Google 的内容抓取系统来为网页编制索引并生成相关搜索字词。包含查询参数(如跟踪变量、用户 ID、会话 ID 或其他动态标识符)的内容网页网址可能会干扰抓取工具评估网页核心内容的能力,并可能导致相关搜索字词不准确或不相关。请使用“ignoredPageParams”参数来标识这些非必需参数,确保内容编入索引,并减少不必要的抓取负载。这样一来,Google 就能更好地识别出某个网页是否已被抓取,并开始显示建议的搜索字词(包括 Google 的建议和合作伙伴的建议,如果符合条件)。

<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' for Related Search on Content pages
  '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 comes from a source you control;
                                           // required when 'terms' is present.
};

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

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

<p>More page content</p>

</body>
</html>

需要避免的事项

我们建议所有发布商遵守有关植入 AdSense 自定义搜索广告的指南,并避免使用可能会干扰广告呈现并导致意外结果或效果欠佳的某些植入方法。

  • 除非是为了实现无限滚动,否则请勿从一个网页发起多次广告调用
  • 请勿在广告呈现之前或之后隐藏广告块
  • 请勿在网页上随意移动广告块
  • 请求的广告展示区域数量不得超过您想在网页上展示的数量
  • 请勿操纵广告块的 DOM
  • 不实现自己的延迟加载(改为依赖 Google 的延迟加载)
  • 请勿缓存您网站上的 Google JS 资源
  • 请勿在内容网页上使用“query”参数进行相关搜索,因为这会导致意外结果。