MediaWiki:Common.js

提供: 経済屋wiki
2025年11月17日 (月) 22:55時点におけるSadora (トーク | 投稿記録)による版
ナビゲーションに移動 検索に移動

注意: 保存後、変更を確認するにはブラウザーのキャッシュを消去する必要がある場合があります。

  • Firefox / Safari: Shift を押しながら 再読み込み をクリックするか、Ctrl-F5 または Ctrl-R を押してください (Mac では ⌘-R)
  • Google Chrome: Ctrl-Shift-R を押してください (Mac では ⌘-Shift-R)
  • Microsoft Edge: Ctrl を押しながら 最新の情報に更新 をクリックするか、Ctrl-F5 を押してください。
// === Google AdSense loader ===
if ( !window.keizaiyaAdsLoaded ) {
    window.keizaiyaAdsLoaded = true;

    var s = document.createElement( 'script' );
    s.async = true;
    // ★ここを自分の client ID に変える
    s.src = 'https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-8908534172586133';
    s.crossOrigin = 'anonymous';
    document.head.appendChild( s );
}

// === 本文下 & サイドバー下に広告枠を差し込む ===
mw.loader.using( 'mediawiki.util', function () {
    $( function () {
        var ns   = mw.config.get( 'wgNamespaceNumber' );
        var skin = mw.config.get( 'skin' ); // 'vector' / 'vector-2022' / 'minerva' etc.

        // 広告を出す名前空間を制限(例:本文とプロジェクトだけ)
        if ( [0, 4].indexOf( ns ) === -1 ) {
            return;
        }

        // ---- ここからスマホ版(Minerva)専用処理 ----
        if ( skin === 'minerva' ) {
            // すでに挿入済みなら二重挿入を防ぐ
            if ( $( '.keizaiya-ad-bottom' ).length ) {
                return;
            }

            var bottomAdHtml =
                '<div class="keizaiya-ad keizaiya-ad-bottom">' +
                    '<ins class="adsbygoogle" ' +
                        'style="display:block" ' +
                        'data-ad-client="ca-pub-8908534172586133" ' + // ★自分の client ID
                        'data-ad-slot="6591340801" ' +                  // ★スマホ用 or 共通の ad-slot
                        'data-ad-format="auto" ' +
                        'data-full-width-responsive="true"></ins>' +
                '</div>';

            // Minerva では本文領域が .content / .mw-body-content あたりになる
            var $content = $( '#mw-content-text, .mw-body-content, .content' );
            if ( $content.length ) {
                // 本文のすぐ下に挿入
                $( bottomAdHtml ).insertAfter( $content.last() );
                (adsbygoogle = window.adsbygoogle || []).push({});
            }

            // ※スマホではサイドバー広告は作らない
            return;
        }

        // ---- ここから PC 版(vector 等)用:今まで動いている処理 ----

        // 既に作っている PC 用の「本文下+サイドバー下広告」挿入コードをここに置く
        // 例:
        if ( $( '.keizaiya-ad-bottom' ).length === 0 ) {
            var bottomAd =
                '<div class="keizaiya-ad keizaiya-ad-bottom">' +
                    '<ins class="adsbygoogle" ' +
                        'style="display:block" ' +
                        'data-ad-client="ca-pub-8908534172586133" ' +
                        'data-ad-slot="6591340801" ' +
                        'data-ad-format="auto" ' +
                        'data-full-width-responsive="true"></ins>' +
                '</div>';

            var $contentPc = $( '#mw-content-text' );
            if ( $contentPc.length ) {
                $( bottomAd ).insertAfter( $contentPc );
                (adsbygoogle = window.adsbygoogle || []).push({});
            }
        }

        if ( $( '.keizaiya-ad-sidebar' ).length === 0 ) {
            var sideAd =
                '<div class="keizaiya-ad keizaiya-ad-sidebar">' +
                    '<ins class="adsbygoogle" ' +
                        'style="display:block" ' +
                        'data-ad-client="ca-pub-xxxxxxxxxxxxxxxx" ' +
                        'data-ad-slot="ZZZZZZZZZZ" ' +
                        'data-ad-format="auto"></ins>' +
                '</div>';

            var $panel = $( '#mw-panel' );
            if ( $panel.length ) {
                $( sideAd ).appendTo( $panel );
                (adsbygoogle = window.adsbygoogle || []).push({});
            }
        }
    } );
} );