Counterize II の影響でページ表示時にエラー発生

このサイトでも使わせてもらってるWordPress用PluginのCounterize II
アクセスカウンタに加えて簡易アクセス解析も付いた便利なプラグインだ。

エラーが発生したのは、検索エンジン経由でRefererにキーワードが含まれるとき。
しかも、マルチバイト文字が含まれるときに限られることが分かった。
ページは表示されるものの、ページ上部にWordPressのエラー表示が出てしまうのでかっこ悪い。
関係するのは、

  • wp_Counterize
  • wp_Counterize_Keywords
  • wp_Counterize_Pages
  • wp_Counterize_Referers
  • wp_Counterize_UserAgents

と4つあるテーブル(接頭辞は環境によって違う)の、うち Counterize_Keywords だ。
原因はこのテーブルのnameフィールドの照合順序がlatin1_swedish_ciになっていたこと。
ページ表示の際に新規キーワードか既存キーワードか判断して、カウントアップ(Update)するか、新しいレコードを作製(Insert)するかを判断する部分、
$sql = “SELECT keywordID from “.counterize_keywordTable().” where keyword = ‘”.$wpdb->escape($ref[‘keyword’]).”‘”;
このクエリのwhere句でlatin1_swedish_ciとutf8_general_ciが混じっているのがMySQL的に嫌だったらしくエラーになっていた。
該当フィールドをutf8_general_ciに変更して修正完了。
海外製プラグインでは良くあることなので気をつけていたはずなのに、、、
phpMyAdminで修正。念のため関連テーブルも全て変更。

wp_Counterize_Keywordsには”???”とかのゴミが溜まっていたので、適当に削除。
一応wp_Counterize_ReferersのkeywordIDフィールドと関連あるっぽいけど、Joinしているようなクエリは見当たらなかったので、あんまり深く考えずざっくり削除。
まあ動いてるし大丈夫っしょ。

ちなみに気づいたきっかけは、嫁が会社から “and i love you アニキ” というキーワードでblog検索した結果から飛んできたときにエラーになったってことを教えてくれたから。
アニキて。いや、書いたけどさ。。
このページで頂いたコメントもこのことだったのかもしれず。タイトル日本語だし。
いやぁ、スッキリ!
自分はWPにログインしっぱなしで、自分のIDはカウントしない設定になっていたんで、発見が遅れますた。

ちなみに、このサイトでは右側のWidgetに「過去の累計」「本日のアクセス数」「昨日のアクセス数」「アクセス中のURIへのアクセス数」の4つのカウンタを表示している。
それぞれ、

  • counterize_getamount() トータル
  • counterize_gethitstoday() 本日
  • counterize_gethitsyesterday() 昨日 (標準では用意されていないのでgethitstodayを参考に作成)
  • counterize_getHitsOnCurrentArticle() アクセス中のURIへのアクセス数

使える関数はFunctions ≫ Blog der Microsoft .NET / Dynamics NAV – Group Halle で紹介されている。
けど、counterize_getHitsOnCurrentArticle() は書いてない??

1回のページ表示で select count(1) from wp_Counterize where hoge みたいなSQLを毎回実行するのは非効率だなぁ、と思いながら。
重さが気になったら何か考えることにする。

club nintendo で NINTENDO DS Liteポーチ(ネイビー) もらった

クラブニンテンドー12月2日に申込んでおいた「NINTENDO DS Liteポーチ(ネイビー)」が届いてた。
250ポイントナリ〜。

封筒にマリオ帽 封筒にマリオ帽

DS Liteポーチ 本体にピッタリサイズ

タグもマリオ帽 タグにもマリオ帽

DSソフトが2本まで収納可能ソフトしまったところ DSのゲームが2本まで一緒に収納できちゃう

本体と同色のネイビー 本体と同じネイビー

結構満足度高し。
別にネイビーが好きなわけじゃなくて、DSが欲しかったときにネイビーしか売ってなかったから。
なんだけど、最近は気に入ってきた。

次はクラブニンテンドー花札をもらうかな。400ポイントか。。今25ポイント。。。

AND I LOVE YOU 届きましたぜ アニキ

嫁から「宅配BOXに何か入ってるっぽいから、仕事帰りに見てきて」というメールが来てたので、Amazonで買った次の携帯電話用のmicroSDが届いたかぁ〜、とか思ってたら、、、

AND I LOVE YOU 限定版 - DREAMS COME TRUE

まさかのフラゲ。
発売日にも受け取れないかもと思っていた嫁大興奮。
(ドリブログのフラゲ書き込み見て、どーせ、、、とか思ってたらしい。よかったね。)

今CD2周目に突入。
DREAMS COME TRUE 「AND I LOVE YOU」のそれぞれの曲への思い入れを見ながら、1曲1曲噛み締めております。
DWL2007が思い出されます。
歌詞カードを見ると泣きそうなのでまだ見てません。
DVDは週末腰を据えて拝見します。

まささん、吉田さん、素晴らしいアルバムをありがとう。
こいつぁ良いクリスマスプレゼントです。

ちょ、冨樫!

<ハンター×ハンター>また休載、作者「近くまた戻ってまいります」(毎日新聞) – Yahoo!ニュース

冨樫さんは巻末で「近くまた戻ってまいります。なるべく早く帰って来ます。頑張ります」とコメントしている。

ハイハイ、ワロスワロス。
キメラアント編くらい終わらせてから休めよ、、、

集英社涙目だろうなぁ。。。

DoCoMo PRIME6 第3回に応募

12月1日から第3回の受付が始まっていたPRIME6
「第1回、第2回に応募・当選された方も、ご応募いただけます。」とのこと。あざーっす。

昨日応募しようと思ったらメンテナンス中らしく出来なかったので、今日改めて応募。
色々と(当たりもしないのに)迷った挙句、「心満たされる、おいしさ」カテゴリから「舞の海 ピリ辛キムチちゃんこ」をチョイス。うまほー!
前回に引き続き「食」カテゴリ!

ちなみに応募ってPCからでも出来るのね。。。途中まで携帯で頑張ってた。。
(My DoCoMoからログインして応募。)

DoCoMo PRIME6

オンラインDPEサービスは便利だ

2年くらい前までは、自分で撮った写真は自宅のプリンタで印刷するのが(自分の中では)ごくごく普通だった。
特に他の選択肢を考えるでもなくプリントアウトしていたのだが、勤務先のビルに入っている55ステーションのサービスに写真天国 photo10.jpってのがあって、自宅から予めインターネット経由でデータを送っておいて、店舗で出来上がった写真を受け取るというもの。支払いは写真受け取り時。
店舗にも端末があってメモリカードを差し込んで写真を選んで、、、ってやれば同じことが出来るけど、枚数が多いと選ぶのが面倒なのと、何となく人目があると気になる。(別に変な写真は無いけど!
なので、ブラウザでサクッとデータが送れるこのサービスは気楽で良い。

それを機にオンラインDPEサービスを色々と使ってみて、料金が結構違ったり、印画紙の質が違ったりと色々と気になる点も。
価格.com – カメラ オンラインプリント料金比較
ここで安いところを選んだりしてた。

でも、最近はDigipriばっかり。なぜならPicasaからデータが送信できるから。
各社ブラウザ経由のデータ登録も操作性を考えて作られているものの、やっぱり専用のアプリケーションは使いやすい。
プリンタのインクと紙のコスト、印刷の品質を考えると少量のプリント以外はオンラインサービスを使ったほうがどう考えてもいい!
ってことで、今日も旅行の写真を注文するべ〜。

ちなみにオンライン写真共有って考えると普通はFlickrなんだろうけど、どうしても使いやすいと思えず、、、Picasa + Picasa ウェブ アルバムがしっくりと来た。
今はFlickrにも使いやすいクライアントソフトがあるのかな?