「MediaWikiにGoogle AdSenseを追加してみた/MobileFrontend」の版間の差分

提供: とある社畜の頭脳整理
ナビゲーションに移動 検索に移動
(ページの作成:「MediaWikiのスマホサイトはMobileFrontendってextension(拡張)で実現しているので、前回の「MediaWikiにGoogle AdSenseを追加してみた」…」)
 
 
6行目: 6行目:
 
<ol>
 
<ol>
 
<li>以下のディレクトリから「MinervaTemplate.php」ってファイルを探してね。
 
<li>以下のディレクトリから「MinervaTemplate.php」ってファイルを探してね。
<pre>
+
<syntaxhighlight lang="text">
 
【MediaWikiをインストールしたディレクトリ】/extensions/【MobileFrontendをインストールしたディレクトリ】/includes/skins
 
【MediaWikiをインストールしたディレクトリ】/extensions/【MobileFrontendをインストールしたディレクトリ】/includes/skins
</pre>
+
</syntaxhighlight>
 
僕の場合は以下の通りになるよ。
 
僕の場合は以下の通りになるよ。
<pre>
+
<syntaxhighlight lang="text">
 
【MediaWikiをインストールしたディレクトリ】/extensions/MobileFrontend/includes/skins
 
【MediaWikiをインストールしたディレクトリ】/extensions/MobileFrontend/includes/skins
</pre>
+
</syntaxhighlight>
 
</li>
 
</li>
 
<li>「MinervaTemplate.php」から以下の行を探してね。
 
<li>「MinervaTemplate.php」から以下の行を探してね。
<source lang="php">
+
<syntaxhighlight lang="html">
 
protected function renderContentWrapper( $data ) {
 
protected function renderContentWrapper( $data ) {
 
$isSpecialPage = $this->getSkin()->getTitle()->isSpecialPage();
 
$isSpecialPage = $this->getSkin()->getTitle()->isSpecialPage();
48行目: 48行目:
 
<?php
 
<?php
 
}
 
}
</source>
+
</syntaxhighlight>
 
</li>
 
</li>
 
<li>この部分を以下の通り変更するよ。(思い切って<nowiki><div id="content_wrapper"></nowiki>タグの上下に入れてやったよ。)
 
<li>この部分を以下の通り変更するよ。(思い切って<nowiki><div id="content_wrapper"></nowiki>タグの上下に入れてやったよ。)
<source lang="php">
+
<syntaxhighlight lang="html" highlight="4-12,40-48">
 
protected function renderContentWrapper( $data ) {
 
protected function renderContentWrapper( $data ) {
 
$isSpecialPage = $this->getSkin()->getTitle()->isSpecialPage();
 
$isSpecialPage = $this->getSkin()->getTitle()->isSpecialPage();
102行目: 102行目:
 
<?php
 
<?php
 
}
 
}
</source>
+
</syntaxhighlight>
 
</li>
 
</li>
 
<li>スマホから画面を見て確認してね</li>
 
<li>スマホから画面を見て確認してね</li>

2019年7月26日 (金) 17:15時点における最新版

MediaWikiのスマホサイトはMobileFrontendってextension(拡張)で実現しているので、前回の「MediaWikiにGoogle AdSenseを追加してみた」をしても、スマホの画面にアドセンスは追加されないんだよ。なので、MibleFrontend用のアドセンスの追加方法を別途あげておくよ。(MobileFrontendのインストールは「MediaWikiに携帯用の画面を追加する」を見てね)

やり方

基本的な流れは「MediaWikiにGoogle AdSenseを追加してみた」の記事の後ろに追加する方法と基本的に同じなんだよ。

  1. 以下のディレクトリから「MinervaTemplate.php」ってファイルを探してね。
    【MediaWikiをインストールしたディレクトリ】/extensions/【MobileFrontendをインストールしたディレクトリ】/includes/skins
    

    僕の場合は以下の通りになるよ。

    【MediaWikiをインストールしたディレクトリ】/extensions/MobileFrontend/includes/skins
    
  2. 「MinervaTemplate.php」から以下の行を探してね。
    protected function renderContentWrapper( $data ) {
    	$isSpecialPage = $this->getSkin()->getTitle()->isSpecialPage();
    	?>
    	<div id="content_wrapper">
    		<?php
    			if ( !$isSpecialPage ) {
    				echo $data['prebodytext'];
    				// FIXME: Temporary solution until we have design
    				if ( isset( $data['_old_revision_warning'] ) ) {
    					echo $data['_old_revision_warning'];
    				} else {
    					$this->renderPageActions( $data );
    				}
    			}
    		?>
    		<?php if ( !$data[ 'unstyledContent' ] ) { ?>
    		<div id="content" class="content">
    			<?php
    				if ( isset( $data['subject-page'] ) ) {
    					echo $data['subject-page'];
    				}
    				echo $data[ 'bodytext' ];
    				$this->renderMetaSections();
    				$this->renderHistoryLink( $data );
    			?>
    		</div>
    		<?php } else {
    			echo $data[ 'bodytext' ];
    		} ?>
    	</div>
    	<?php
    }
    
  3. この部分を以下の通り変更するよ。(思い切って<div id="content_wrapper">タグの上下に入れてやったよ。)
    protected function renderContentWrapper( $data ) {
    	$isSpecialPage = $this->getSkin()->getTitle()->isSpecialPage();
    	?>
    	<script async src="xxxx"></script>
    		<!-- AdSense_mobile -->
    		<ins class="adsbygoogle"
    		     style="display:inline-block;width:300px;height:250px"
    		     data-ad-client="xxxx"
    		     data-ad-slot="xxxx"></ins>
    		<script>
    		(adsbygoogle = window.adsbygoogle || []).push({});
    	</script>
    	<div id="content_wrapper">
    		<?php
    			if ( !$isSpecialPage ) {
    				echo $data['prebodytext'];
    				// FIXME: Temporary solution until we have design
    				if ( isset( $data['_old_revision_warning'] ) ) {
    					echo $data['_old_revision_warning'];
    				} else {
    					$this->renderPageActions( $data );
    				}
    			}
    		?>
    		<?php if ( !$data[ 'unstyledContent' ] ) { ?>
    		<div id="content" class="content">
    			<?php
    				if ( isset( $data['subject-page'] ) ) {
    					echo $data['subject-page'];
    				}
    				echo $data[ 'bodytext' ];
    				$this->renderMetaSections();
    				$this->renderHistoryLink( $data );
    			?>
    		</div>
    		<?php } else {
    			echo $data[ 'bodytext' ];
    		} ?>
    	</div>
    	<script async src="xxxx"></script>
    		<!-- AdSense_mobile -->
    		<ins class="adsbygoogle"
    		     style="display:inline-block;width:300px;height:250px"
    		     data-ad-client="xxxx"
    		     data-ad-slot="xxxx"></ins>
    		<script>
    		(adsbygoogle = window.adsbygoogle || []).push({});
    	</script>
    	<?php
    }
    
  4. スマホから画面を見て確認してね