Google Analyticsのサイト内検索で文字化け

Google Analyticsのサイト内検索で文字化け

これを修正する方法を、あるサイトから見つけた。

UTF-8しか対応していないのは、まあ良いとしてそれでも文字化けをするのは、どうやら文字数が関係しているらしい。

文字数が少ない時に文字化けするらしい。この文字数は6文字以上なら大丈夫らしい。

なので、検索フォームのあるところすべてにJacaScriptでダミーのクエリパラメータを追加する。

<script type=”text/javascript”>
function setQuery(){
document.forms[‘qs’].elements[‘dm’].value = “サイト内検索 ” + document.qs.query.value;
}
</script>

----------–

<form name=”qs” OnSubmit=”setQuery();” style=”margin-top: 0px; text-align: right;” action=”<{$xoops_url}>/search.php” method=”get”>

<{xoops_input type=text name=query size=25}>

<{xoops_input type=hidden name=dm value=””}>

formに名前をつける(この場合「qs」としている)のと、hiddenでパラメータ「dm」を確保しておく

それで、JSの方から、「dm」に”サイト内検索 +” と「query」の値を足して追加してあげる。

そうすれば、パラメータ「dm」で文字数が増えたものが出来る。

後は、GoogleAnalytics側のクエリーパラメータの設定で「query」を除外してあげて、「dm」を設定してあげる。

これを、すべての検索フォームがあるところに設定してあげる。

フォームのテンプレート(legacy_search_form.html)はもちろんだが、フォームブロックやテーマに直接書き込んでいるならそちら側も修正する必要がある。

それとテーマ側の修正をする場合には、JSの変数がバッティングしないようにform名を変更しておく必要がある。そのばあいにはJSの関数ないに使われている変数も変更したform名に合わせておく必要がある。

と、まあこんなことをすればうまくいくらしい。

先ほど設定したので、確認できるのは明日になる。

中小企業診断士 山口亨
UTAGE経営研究所

関連記事

  1. WordPressで他サイトのRSSを取得して自サイトに自動投稿する

  2. XoopsでSSL

  3. GoogleウェブマスターツールからHTMLの重複についての改善

  4. XML Sitemap Generator for WordPress…

  5. 流れている音楽の曲名を知りたいとき

  6. Xoops preload で使いたいもの

  7. アメブロからFacebookとTwitterとの連携

  8. WordPressのインストールめも

PAGE TOP