Bu makalede, Google Yayıncı Etiketi (GPT) kitaplığı kullanılarak oyun manuel geçiş reklamının nasıl gösterileceğini açıklayan notlar ve örnekler verilmektedir. Oyun manuel geçiş reklamları, manuel bir tetikleyici aracılığıyla kullanıcılara gösterilen, GPT tarafından yönetilen tam sayfa reklamlardır.
Aşağıdaki GPT etkinlikleri, geçiş reklamlarını görüntülemek ve bunlarla etkileşim kurmak için kullanılır:
Etkinlik | Tetiklenme zamanı... |
---|---|
|
Oyun manuel geçiş reklamı alanı gösterilmeye hazır. Geçiş reklamını görüntülemek için sağlanan etkinlik nesnesinde |
Oyun manuel geçiş reklamı, oyunun nasıl görüntülendiğine bağlı olarak tam ekran veya oyun çerçevesi içinde gösterilebilir. H5 Oyunlarında Gösterilen Reklam yapıları hakkında daha fazla bilgi
Aşağıdaki örnek kod, H5 oyununun doğrudan sayfayla aynı üst çerçeveye ("Tam ekran" yapısı kullanılarak) yerleştirildiğini varsayar. Bu durumda, manuel geçiş reklamı da tam ekran olarak oluşturulur.
Bununla birlikte, bu kod "iFrame/WebView" yapısı kullanılarak bir alt çerçevenin içine yerleştirildiğinde de çalışır. Manuel geçiş reklamının H5 oyun tuvaliyle sınırlanması için oyunun iFrame içine yerleştirilmesi gerekir.
Örnek
<!doctype html>
<html>
<head>
<!-- Buradaki Google Yayıncı Etiketi (varsa) yalnızca H5 oyunu dışında reklam yayınlamaktan sorumlu olacaktır. -->
<title>Bu örnek H5 oyununun sayfası</title>
<!-- <head> içeriğinizi buraya ekleyin. -->
</head>
<body>
<span id="example-text">Örnek H5 oyunu</span>
<iframe src="https://www.example-game.com" title="Örnek oyun" allow="autoplay">
<!-- Örnek kod burada sunulur. Bu çerçevede yüklenen Google Yayıncı Etiketi yalnızca H5 oyununda kullanılır. -->
</iframe>
</body>
</html>
Kullanım notları
- GPT, en iyi kullanıcı deneyimini sağlamak için yalnızca biçimi düzgün bir şekilde destekleyen sayfalarda oyun manuel geçiş reklamlarını ister. Bu nedenle,
defineOutOfPageSlot()
işlevi null döndürebilir. Gereksiz herhangi bir iş yapmadığınızdan emin olmak için bu durumu kontrol etmelisiniz. - Oyun manuel geçiş reklamlarını yalnızca bir geçiş reklamının görünmesini istediğiniz sayfa veya ortamlarda isteyin. Oyun manuel geçiş reklamları masaüstü, tablet ve mobil cihazlarda yayınlanmaya uygundur.
- Geçiş reklamı,
GameManualInterstitialSlotReady
etkinliğindenmakeGameManualInterstitialvisible
değerini çağırdığınızda görünür. - Oyun manuel geçiş reklamlarının sabit bir sıklık sınırı vardır. Bu,
gameManualInterstitialSlotReady
etkinliğinin 120 saniyede bir defadan daha fazla etkinleşmesini engeller.
Koşullar ve öneriler
- Oyun manuel geçiş reklamları kendi reklam alanlarını oluşturur. Diğer reklam türlerinin aksine, oyun manuel geçiş reklamları için
<div>
etiketinin tanımlanmasına gerek yoktur. Bu reklamlar, bir reklam yüklendiğinde kendi kapsayıcılarını otomatik olarak oluşturup sayfaya ekler. - Birden fazla alan içeren bir sayfada tekli istek mimarisi (SRA) kullanıyorsanız statik reklam alanları div'leri oluşturulana kadar
display()
çağrısı yapmayın. Google Ads En İyi Uygulamaları bölümünde açıklandığı gibi,display()
işlevine yapılan ilk çağrı bu noktadan önce tanımlanmış her reklam alanını ister. Oyun manuel geçiş reklamı alanları önceden tanımlanmış bir<div>
gerektirmese de statik reklam alanları bunu gerektirir. Bu öğeler sayfada bulunmadan öncedisplay()
çağrısı yapılması düşük kaliteli sinyallere neden olabilir. Bu nedenle, ilk çağrıyı statik alanlar tanımlanana kadar ertelemeniz önerilir. - Manuel geçiş reklamlarını trafiğe eklemek standart web geçiş reklamları ile aynı reklam birimi ve satır öğesi ayarlarını gerektirir.
Örnek
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Oyun Manuel Geçiş Reklamı Örneği</title>
<script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script>
<script>
window.googletag = window.googletag || { cmd: [] };
let gameManualInterstitialSlot;
googletag.cmd.push(function () {
// Oyun manuel geçiş reklamı alanı tanımlayın.
defineGameManualInterstitialSlot();
// Statik reklam alanlarını tanımlayın.
staticSlot = googletag.defineSlot(
'/6355419/Travel/Europe', [100, 100], 'static-ad-1')
.addService(googletag.pubads());
// SRA ve hizmetleri etkinleştirin.
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
function defineGameManualInterstitialSlot() {
gameManualInterstitialSlot = googletag.defineOutOfPageSlot(
'/6355419/Travel/Europe/France/Paris',
googletag.enums.OutOfPageFormat.GAME_MANUAL_INTERSTITIAL);
// Sayfa veya cihaz, geçiş reklamlarını desteklemiyorsa alan null değerini döndürür.
if (gameManualInterstitialSlot) {
gameManualInterstitialSlot.addService(googletag.pubads());
printStatus('Waiting for interstitial to be ready...');
// Geçiş reklamı yüklendiğinde tıklama işleyicisini kaydetmek için etkinlik işleyici ekleyin.
// Bu etkinlik etkinleşmezse yerel depolama alanını temizleyip sayfayı yenilemeyi
// deneyin.
googletag.pubads().addEventListener('gameManualInterstitialSlotReady',
(slotReadyEvent) => {
if (gameManualInterstitialSlot === slotReadyEvent.slot) {
printStatus('Interstitial is ready.');
const button = document.getElementById('trigger');
button.style.display = 'block';
button.addEventListener('click', () => {
slotReadyEvent.makeGameManualInterstitialVisible();
printStatus('Interstitial is active.');
}, { once: true });
}
});
googletag.pubads().addEventListener('gameManualInterstitialSlotClosed',
resumeGame);
}
}
function resumeGame() {
document.getElementById('trigger').style.display = 'none';
// Oyun manuel geçiş reklamı alanları tek kullanımlıktır, bu nedenle eski alanı kaldırıp
yeni bir alan oluşturun.
googletag.destroySlots([gameManualInterstitialSlot]);
defineGameManualInterstitialSlot();
googletag.display(gameManualInterstitialSlot);
}
function printStatus(status) {
document.getElementById('status').innerText = status;
}
</script>
<style>
button {
display: none;
}
div.content {
position: fixed;
top: 50%;
}
</style>
</head>
<body>
<div id="static-ad-1" style="width: 100px; height: 100px;"></div>
<div class="content">
<span id="status">Oyun manuel geçiş reklamı bu sayfada desteklenmiyor.</span>
<p>
<button id="trigger">GEÇİŞ REKLAMINI TETİKLE</button>
</p>
</div>
<script>
googletag.cmd.push(function () {
// İlk görüntüleme çağrısının statik reklam alanı div'leri tanımlandıktan sonra
// geldiğinden emin olun.
googletag.display(staticSlot);
});
</script>
</body>
</html>