「MediaWikiでGoogleAdcenceを表示させる」の版間の差分

提供:dococo.jp
30行目: 30行目:


# [[mediawikiwiki:Extension:HeaderExtension|Extension:HeaderExtension]]からコードをダウンロード
# [[mediawikiwiki:Extension:HeaderExtension|Extension:HeaderExtension]]からコードをダウンロード
# MediaWikiをインストールしている場所のextensionsに解凍したHeaderExtensionをコピー
# MediaWikiをインストールしている場所のextensionsに解凍したHeaderExtensionにディレクトリの名前を変えてコピー
# LocalSettings.phpにwfLoadExtension (  'HeaderExtension'  );を追加
# LocalSettings.phpにwfLoadExtension (  'HeaderExtension'  );を追加
# $wgHeadScriptCodeにGoogleAdcenceから取得した自分のAdcenceコードを追加
# $wgHeadScriptCodeにGoogleAdcenceから取得した自分のAdcenceコードを追加

2024年4月16日 (火) 12:18時点における版

はじめに

久しぶりにMediaWikiをクリーンインストールして最新版に変更しようとしたところGoogleAdcenceを表示させるためにインストールしたExtension:HTMLets/jaの挙動がおかしくなったので、その対処メモ

いつもどおりインストールしたらエラー発生

Extension:HTMLets/jaをインストールしてGoogleAdcenceをMediaWiki:Sitenoticeに設定したところ以下のエラー表示が発生




Deprecated: Accessing $wgHooks directly is deprecated,use HookContainer::isRegistered() instead.[Called from wfRenderHTMLet in /home/24h/www/MediaWiki/extensions/HTMLets/HTMLets.php at line 136] in /home/24h/www/MediaWiki/includes/debug/MWDebug.php on line 386


Deprecated: Accessing $wgHooks directly is deprecated,use HookContainer::getHandlers() or HookContainer::register() instead.[Called from wfRenderHTMLet in /home/24h/www/MediaWiki/extensions/HTMLets/HTMLets.php at line 137]

in /home/24h/www/MediaWiki/includes/debug/MWDebug.php on line 386

正直よく分かりませんでした

$wgHooks への直接アクセスは非推奨とか表示されますがいろいろソースコードを変えても上手くいかずに困惑してしまいました

Google AdSenseのサイトをよく見ると解決方法がありました

直接の解決方法が載っているわけではありませんが、AdSenseコードをコピーする際に「<head></head>タグ間にAdSenseコードをコピーして貼り付けます」と書いて有ったので、MediaWikiのExtension:HeaderExtensionを使ってheaderタグにAdSenseコードを貼り付ければOKになりました

インストール方法

Extension:HeaderExtensionからコードをダウンロードして貼り付けます

乱暴な説明になりますがインストールは以下のとおりです。

  1. Extension:HeaderExtensionからコードをダウンロード
  2. MediaWikiをインストールしている場所のextensionsに解凍したHeaderExtensionにディレクトリの名前を変えてコピー
  3. LocalSettings.phpにwfLoadExtension (  'HeaderExtension'  );を追加
  4. $wgHeadScriptCodeにGoogleAdcenceから取得した自分のAdcenceコードを追加
  5. $wgHeadScriptName  =  '好きな文字列';を追加(例えば$wgHeadScriptName  =  'googleadcence';)

これでGoogle AdSenseが表示されるはずです。