Joomla!でGoogle AdSense
この前から少しずつ書き足している「簡単! Joomla!でサイトを作ろう」ってサイト。Google AdSense の広告も問題なく表示してたんだけど、ある日(昨日)突然モジュール設定ができなくなった。それも Google AdSense 広告のモジュールだけ。
一旦モジュールを削除して、モジュールの再インストールをしようとしたら、「エラー! Joomla! XML セットアップ ファイルがパッケージにありません」なんて怒られた。この前は問題なくインストールできて設定もできたのにっ!
とりあえず、原因を調べるべくPHPにコードを追加してエラーが発生してそうなところを探ってみた。
- 「エラー! Joomla! XML セットアップ ファイルがパッケージにありません」でぐぐる。
→Joomla!のメッセージファイルがヒット。
そのメッセージは「ERRORNOTFINDJOOMLAXMLSETUPFILE」って名前で定義されてた。
- サーバーにログインし、Joomla! をインストールしたディレクトリで「ERRORNOTFINDJOOMLAXMLSETUPFILE」を grep する。
→libraries/joomla/installer 内の helper.php と installer.php (とメッセージを定義したファイル)でマッチ。
- PHPファイルを見てエラーの原因を探る。
→XMLをload/parseするところか、ルートのタグ名のチェックで引っかかってるらしい。
- ルートのタグ名は合ってるので、load/parseに失敗してるんだろうと見て、PHPファイルにメッセージの表示を追加し、原因を特定。
→XMLのload/parseで失敗しているのを確認。
- XMLファイルを開いてみる。
→ざっと眺めた感じではまずいところはなさそうな・・・
- 1行目に気付く。
<?xml version="2.5" encoding="utf-8"?>
ぉぃ。
- "2.5" を "1.0" に書き換える。
- ZIPし直してインストールしてみる。
→インストール成功!
さっそく記事にしてみたり。
≫Google AdSense モジュールのエラー