カウンタを付けたくて、Counterize IIプラグインを付けてみた。
なんだかうまく動かないので、どうしてだろうと色々調べていたのですが、Apacheのlogを見ていたところ、Counterize IIが使用しているテーブルの構成がおかしいことが判明。
Counterize IIをインストールした際に、たぶんcounterize_install.phpが動くんだろうけれど、なにやらCounterizeのバージョンをチェックしてテーブルのフィールドを色々操作している模様。
ちなみに、設定画面ではVersion 2.013と表示されるけれど、作られたテーブルを確認しても、マイナーバージョンが”13″の時に作られるフィールドが足りない。
なんで、うまくテーブルが作成されないのか原因を突き止めていないのだけれど(設定画面で表示されるマイナーバージョン”013″の”0″が悪いような気が…)、関連するテーブルは
- wp_Counterize
- wp_Counterize_Keywords
- wp_Counterize_Pages
- wp_Counterize_Referers
- wp_Counterize_UserAgents
となる。悩んでいても仕方が無いので作り直す事にした。
上から4つのテーブルはみんなの教室さんのCounterize IIをインストールにあるSQL文で対応出来る見たいだけれど、wp_Counterize_UserAgentsについては記載がないので、counterize_install.phpを見ながら作る必要がある。
- use データベース名称;
してから、
- drop table テーブル名称;
で関連テーブルを消した後、頂いたSQLを流す。
wp_Counterize_UserAgentsの分については、一応下記のようなSQLを作成して流した。
[sourcecode lang=”sql”]
CREATE TABLE `wp_Counterize_UserAgents` (
`agentID` int(11) NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
`count` int(11) NOT NULL default ‘1’,
`browserName` VARCHAR( 255 ) NOT NULL,
`browserCode` VARCHAR( 255 ) NOT NULL,
`browserVersion` VARCHAR( 255 ) NOT NULL,
`osName` VARCHAR( 255 ) NOT NULL,
`osCode` VARCHAR( 255 ) NOT NULL,
`osVersion` VARCHAR( 255 ) NOT NULL,
PRIMARY KEY (`agentID`),
KEY `name` (`name`),
KEY `count` (`count`)
);
[/sourcecode]
とりあえず動いた模様。
2009.09.29 追記
右サイドメニューへのカウンタ適用はExecutable PHP widgetプラグインを適用してウィジェットとして登録しました。
コメント