隨機顯示廣告流量示例
<script>
// Make sure that the googlefc property exists on the window.
window.googlefc = window.googlefc || {};
// To guarantee functionality, this must go before the tag on the page.
googlefc.controlledMessagingFunction = (message) => {
// Show the message to 10% of traffic.
var percentageToShowTo = 10;
// Pick a random number between 0 and 100.
var rand = Math.random() * 100;
if (rand <= percentageToShowTo) {
message.proceed(true);
} else {
message.proceed(false);
}
};
</script>
不要向訂閱者顯示訊息
(假設您有一個函式,您可以查看使用者是否為訂閱者)
<script>
// Make sure that the googlefc property exists on the window.
window.googlefc = window.googlefc || {};
// To guarantee functionality, this must go before the tag on the page.
googlefc.controlledMessagingFunction = (message) => {
// checkSubscriptionStatus() is an example of a function that may exist
// in your codebase that resolves a promise with true or false depending on
// whether the user on the page is a subscriber.
checkSubscriptionStatus().then(
function (isSubscriber) {
// Do not show the message if a user is a subscriber.
if (isSubscriber) {
message.proceed(false);
} else {
message.proceed(true);
}
}
);
}
</script>
在首頁以外的任何地方顯示訊息
<script>
// Make sure that the googlefc property exists on the window.
window.googlefc = window.googlefc || {};
// To guarantee functionality, this must go before the tag on the page.
googlefc.controlledMessagingFunction = (message) => {
var pathname = location.pathname;
// This assumes other pages on your site are differentiated with a different
// path. `location.href` can also be used if more information is needed to
// differentiate between the home page and other pages on the site.
if (pathname.length > 1) {
message.proceed(true);
} else {
message.proceed(false);
}
};
</script>
只在網頁瀏覽次數達到一定門檻後顯示訊息
(假設您有自己的 Cookie 或其他機制來追蹤網頁瀏覽次數)
<script>
// Make sure that the googlefc property exists on the window.
window.googlefc = window.googlefc || {};
// To guarantee functionality, this must go before the tag on the page.
googlefc.controlledMessagingFunction = (message) => {
// How many pageviews before the message is shown.
var freePageviewsLimit = 3;
// Check how many pages the user has seen.
var pagesViewed = getPagesViewed();
// Show the message if the user has seen more pages than the free limit.
if (pagesViewed >= freePageviewsLimit) {
message.proceed(true);
} else {
message.proceed(false);
}
};
</script>
使用新聞廣告代碼指南 (NTG),追蹤 Google Analytics (分析) 中允許及廣告封鎖使用者的相關事件
將 UA-xxxxxxxxx-x 換成正確的帳戶追蹤 ID。
如要進一步瞭解新聞標記指南,請參閱這篇文章。
<!-- Google Analytics -->
<script>
window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
ga('create', 'UA-xxxxxxxxx-x', 'auto');
ga('send', 'pageview');
</script>
<script async src='https://www.google-analytics.com/analytics.js'></script>
<!-- End Google Analytics -->
<script>
// Make sure that the googlefc property exists on the window.
window.googlefc = window.googlefc || {};
googlefc.callbackQueue = googlefc.callbackQueue || [];
googlefc.callbackQueue.push({
'AD_BLOCK_DATA_READY': function() {
switch (googlefc.getAdBlockerStatus()) {
case googlefc.AdBlockerStatusEnum.EXTENSION_LEVEL_AD_BLOCKER:
case googlefc.AdBlockerStatusEnum.NETWORK_LEVEL_AD_BLOCKER:
ga('send', 'event', {
eventCategory: 'NTG adblock',
eventAction: 'detected',
eventLabel: '<page url>',
nonInteraction: true
});
break;
}
switch (googlefc.getAllowAdsStatus()) {
case googlefc.AllowAdsStatusEnum.ADS_ALLOWED:
ga('send', 'event', {
eventCategory: 'NTG adblock',
eventAction: 'allow-ads',
eventLabel: '<page url>',
nonInteraction: true
});
break;
}
}});
</script>
在 Google Analytics (分析) 中追蹤事件,判斷使用者的廣告封鎖使用情況
可用於判斷使用聯播網層級廣告攔截器、擴充功能層級廣告攔截器,或沒有廣告攔截器的使用者百分比。
將 UA-xxxxxxxxx-x 換成正確的帳戶追蹤 ID。
如要進一步瞭解數據分析,請參閱「Google Analytics (分析) 文件」。
<!-- Google Analytics -->
<script>
window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
ga('create', 'UA-xxxxxxxxx-x', 'auto');
ga('send', 'pageview');
</script>
<script async src='https://www.google-analytics.com/analytics.js'></script>
<!-- End Google Analytics -->
<script>
// Make sure that the googlefc property exists on the window.
window.googlefc = window.googlefc || {};
googlefc.callbackQueue = googlefc.callbackQueue || [];
googlefc.callbackQueue.push({
'AD_BLOCK_DATA_READY': function() {
var analyticsData = {
hitType: 'event',
eventCategory: 'Funding Choices',
eventAction: 'Ad Blocking Type'
};
switch (googlefc.getAdBlockerStatus()) {
case googlefc.AdBlockerStatusEnum.EXTENSION_LEVEL_AD_BLOCKER:
analyticsData.eventLabel = 'EXTENSION_LEVEL_AD_BLOCKER';
ga('send', analyticsData);
break;
case googlefc.AdBlockerStatusEnum.NETWORK_LEVEL_AD_BLOCKER:
analyticsData.eventLabel = 'NETWORK_LEVEL_AD_BLOCKER';
ga('send', analyticsData);
break;
case googlefc.AdBlockerStatusEnum.NO_AD_BLOCKER:
analyticsData.eventLabel = 'NO_AD_BLOCKER';
ga('send', analyticsData);
break;
}
}});
</script>