「WordPressで学ぶPHP(1)変数・制御構造編」が発売されました。
「WordPressで学ぶPHP」シリーズの第1巻で、WordPressを通してPHPを学んでいく本です。
この本では、PHPの基本となる変数と制御構造について解説します。
Kindle本で、定価500円です。
アクセスカウンタープラグイン(その1)
Movable Typeにはさまざまなプラグインがありますが、アクセスカウンター関連のものは、当方が知る限りでは「StatWatch」ぐらいしかありません。
ただ、StatWatchプラグインは、管理メニュー上でアクセス数等の情報を見るもので、Blogのページにアクセス数を表示する機能はありません。
また、StatWatchはMySQLとの組み合わせでしか利用できません。
SQLiteでは動作させることができません。
そこで、アクセスカウンターのプラグインを作りました。
まだ開発途中ですが、公開したいと思います。
Ajaxとリアルタイム再構築プラグインを利用して動作します。
インストール手順はやや長くなりますので、数日に分けて解説します。
今日は、プラグインのインストールと初期設定の手順を解説します。
2007年1月14日 18;40
ダウンロードのリンクが間違っていましたので、修正しました。申し訳ありません。
1.このプラグインの機能
このプラグインには以下のような機能があります。
- Blog全体のアクセス数/訪問者数をカウントして表示することができます。
- 日単位/週単位/月単位のアクセス数/訪問者数をカウントして表示することができます。
- 各ページのアクセス数をカウントして表示することができます(ページごとの訪問者数はカウントしません)。
- アクセス数でエントリーをランキングして表示することができます。
また、内部的には以下のログも取るようになっています。
これらのログを表示する機能はまだありませんが、今後追加する予定です。
- アクセスのあった日時
- アクセス元のIPアドレスとホスト名
- 他のページからリンクでアクセスされた場合は、リンク元のアドレス(referer)
- Yahoo/Google/MSNから検索で訪問された場合は、検索に使われたキーワード
2.動作条件
このプラグインは、Movable Type 3.3以降専用です。
また、このプラグインを動作させるには、Movable TypeのデータベースをMySQL/SQLite/PostgreSQLのいずれかで管理していることが必要です。
Berkeley DBでは利用できません。
3.必要なプラグイン等のインストール
アクセスカウンタープラグインは、リアルタイム再構築プラグインおよびAjaxと組み合わせて動作します。
まず、リアルタイム再構築プラグインをインストールします。
以下のエントリーの「2.インストール」の箇所にインストール方法がありますので、そちらを参照してください。
また、Ajaxを利用するために、prototype.jsもインストールします。
以下のサイトに接続し、「Just the .js, please」のリンクをクリックすると、prototype.jsをダウンロードすることができます。
ダウンロード後に、ファイル名を「prototype.js」に変えてから、Blogの出力先ディレクトリにアップロードします。
Prototype JavaScript Framework
3.アクセスカウンタープラグインのインストール
次に、以下のリンクをクリックして、アクセスカウンタープラグインをダウンロードします。
プラグインの継続的な開発やサポートのために、プラグインをご利用された方は、ドネーション(寄付)を行っていただけると幸いです。
ドネーションの方法は、こちらのページをご参照ください。
また、このプラグインの他にも、いくつかのプラグインを配布しています。
配布中のプラグインは、Movable Type Plugin Directoryのページをご参照ください。
Movable Typeのプラグイン開発等のドキュメント「Movable Type Developer's Guide Volume 1」も販売しています。
ご自分でプラグインを作ってみたい方に、ぜひお勧めしたい一冊です。
詳細は特設ページをご覧ください。
zipファイルを解凍すると、「AccessCounter」と「js」の2つのフォルダができます。
このうち、「AccessCounter」フォルダを、Movable Typeのpluginsディレクトリにアップロードします。
「js」フォルダのファイルの使い方は、明日解説します。
ファイルをアップロードした後、Movable Typeにログインすると、アップグレードのメッセージが表示されます。
画面の指示にしたがって、アップグレードの作業を行います。
4.初期設定
アクセスカウンターの初期値など、いくつかの初期設定を行うことができます。
Blogのメニューで「環境設定」の「設定」をクリックして設定ページを開き、「プラグイン」のタブをクリックします。
すると、プラグインの一覧が表示されますので、Access Counterプラグインのところで「設定を表示」のリンクをクリックします。
これで、以下のような設定画面が表示されます。
設定項目の内容は、以下の通りです。
なお、「アクセス解析を見る」というリンクがありますが、現状ではこれは機能しません。
設定項目 | 内容 |
---|---|
アクセスカウンタの初期値 および ホスト(訪問者)数の初期値 |
既存のアクセスカウンターから継続してカウントしたい場合、アクセスカウンターやホスト(訪問者)数の初期値を指定することができます。 |
アクセスログの保存日数 | アクセスログの保存日数を指定します。 保存日数を長くするほど多くのログを残すことができますが、サーバーのディスク容量の消費も大きくなります。 MySQLの場合、1万アクセス分のデータにつき、4MB程度の容量を消費します。 |
リロードしてもカウントしない時間 | このアクセスカウンターでは、あるページにアクセスがあった後に、ここで指定した時間が経過する前に同じホストから同じページにアクセスがあったときには、アクセス数をカウントしないようにしています(初期値は30分)。 ページをリロードするだけでアクセス数が増えるのを防ぐために、このような処理をしています。 リロードしただけでアクセス数が増えるようにしたい場合は、この値を0に設定します。 |
設定が終わったら、「変更を保存」のボタンをクリックします。
Movable Typeのプラグイン集「MT Cloud Starter Kit」をぜひご利用ください
alankiy
リアルタイム再構築プラグイン(その1)
を設定しましたが、
テンプレートを読み込むことができませんでした。 at /docs/blog.***.jp/cgi-bin/plugins/RealtimeRebuild/lib/RealtimeRebuild.pm line 57.
がでます。
どうすれば、エラーを解除できますでしょうか?
ご教授ください。
壱
>alankiyさん
こんにちは。プラグインご利用ありがとうございます。
ご質問の件ですが、「アクセスカウンタープラグイン(その2)」のエントリーの「4.テンプレート・モジュールのリアルタイム再構築を許可する」の作業は行われたでしょうか。
ご確認ください。
http://www.h-fj.com/blog/archives/2007/01/15-100229.php
うみお
先に質問されている alankiy さんの例と同じく、
”テンプレートを読み込むことができませんでした。 at /docs/blog.***.jp/cgi-bin/plugins/RealtimeRebuild/lib/RealtimeRebuild.pm line 57.”
と表示されてしまいます。
対象のモジュールは「リアルタイム再構築を許可」してあるのですが、エラーが出てしまうので先に進めません。
面倒くさいクレームかもしれませんが、書籍を購入した以上、なんとかして先に進みたいです。
ご教示頂ければ幸いですm(_ _)m
壱
>うみおさん
こんにちは。拙著をお買い求めいただき、ありがとうございます。
ご質問の件ですが、「アクセスカウンター用」のテンプレートモジュールが複数存在しているということはないでしょうか。
そうでないとすると、そちらの環境にログインして動作を追ってみないと、原因は見つからなさそうです。
うみお
プラグインの設定で、リアルタイムリビルドの対象モジュールを“初期化”してから再選択すると、動きました★
お手数をお掛けしました。
ただ、ページ分割(DivPages)を試していますが、プルダウンでページを選ぶとajaxが動作するのに、“次のページ”、“最終ページ”のリンクをクリックするとエラーになってしまいます。
なかなか難しいものですね。。。
春他人
書いてある通りにやったのですが、
Cannot call method 'ts2db' on object 'MT::ObjectDriver::Driver::Cache::RAM=HASH(0x8962e1c)' at /home/haruhito/public_html/mt/plugins/RealtimeRebuild/../../plugins/AccessCounter/AccessCounter.pl line 470
とエラーが出てしまいました。
いろいろと試してみたのですがわかりませんでした。
どうすればいいでしょうか。
壱から春他人への返信
>春他人さん
こんにちは。
申し訳ありませんが、このプラグインはMT4.xでは動作しません(MT3.xにしか対応していません)。
春他人から春他人への返信
そうですか…残念です。
いい方法が見つかるまでがんばってみます。
のべおかん
MT5.xでは動作しますか?
壱からのべおかんへの返信
>のべおかんさん
こんにちは。
MT5.xでは動作しません。