DokuWiki

It's better when it's simple

ユーザ用ツール

サイト用ツール


ja:plugin:accscounter

アクセスカウンター・人気ページ一覧表示プラグイン

互換性のある DokuWiki バージョン

Greebo, 2018-04-22

plugin Wiki内の特定のページを訪れた人数を表示します(今日、昨日、全期間)。また、このプラグインが取ったログデータを基にした、人気ページ一覧も表示出来ます。このプラグインは、PukiWikiの物から移植しました(幾らかカスタマイズも施しています)。

最終更新日
2019-11-07
種類
Syntax
リポジトリ
ソース

この拡張は二年以上更新されていません。もはや維持管理や対応がされておらず、互換性に問題がある可能性があります。

This extension is not in the 'plugin' or 'template' namespace and is therefore ignored.

類似 top

タグ counter, statistics, users

概要

特定のページを訪れた人数を表示します。
また、今日、昨日、或いは全期間の、人気ページ一覧も表示出来ます。

PukiWikiのCounterプラグインとPopularプラグインから移植しました。1)

導入

拡張機能マネージャーで検索・インストールを行います。手動でインストールする方法はこちらに記載してございます。

例/使い方

:!: このプラグインを使うページには~~NOCACHE~~マクロを記述して下さい(データがリアルタイムに変動するので、ページがキャッシュされると困る)。

アクセスカウンター

一番シンプルな例。

{{counter}}人が、これまでにこのページを訪れました。

アクセス者が15人いる場合、15人が、これまでにこのページを訪れました。と出てきます。

こういう風にも書けます。

このページへのアクセス
今日: {{counter|today}} / 昨日: {{counter|yesterday}}
総計: {{counter|total}}

こんな風に入力も出来ます(英語圏向けの記述)。

{{counter|total| person visited this page till now.| people visited this page till now.}}

1 person visited this page till now.と出たり、12 people visited this page till now.と出たりします。

人気ページ一覧

:!: 上のアクセスカウンタープラグインが有効なページが集計されます。もし全ページを集計したい場合は、サイドバーやテンプレートにこのプラグインを埋め込むといいと思います。

一番シンプルな例は、

{{POPULAR}}

これまでにアクセスの多かった上位10ページが表示されます。下は表示イメージです。

パラメーターを変更出来ます。

{{POPULAR 45 today}}
{{POPULAR 20 yesterday blacklist1|blacklist2}}

プラグインが動いてるのを見る

ここで見れます(日本語のページ)。

構文

{{counter|引数|メッセージA|メッセージB}}
  • 引数: todayyesterday、もしくはtotal(デフォルト)
  • メッセージA: 表示数に続く文字(0か1の場合)
  • メッセージB: 表示数に続く文字(2以上の場合)
{{POPULAR 数 引数 ブラックリスト}}
  • : 表示する項目の数
  • 引数: todayyesterday、もしくはallperiod(デフォルト)
  • ブラックリスト: リストに表示しないページ(|で区切る)

データマネージャー

管理メニューから「データマネージャー」に行く事が出来、ログデータの閲覧や操作を容易に行えます。

設定系統

サイト設定で設定を変更出来ます。

OptionDescriptionValue TypeDefault Value
timezoneタイムゾーン(日付変更の判断に利用します。空欄の場合は、サーバーにセッティングされたタイムゾーンを利用します。指定出来るのは、PHPマニュアルの「サポートされるタイムゾーンのリスト」にあるIDです。)string2)
excludeMgAndSpマネージャーやスーパーユーザーをカウントするかどうか(設定「manager」「superuser」参照)0(カウントする)、sp(スーパーユーザーはカウントしない)、mg(マネージャー(スーパーユーザー含む)はカウントしない)からのプルダウン選択0
exclusionList除外するIP・リモートホスト
これらのIPやリモートホストからのアクセスはカウントされません。特定のIPやリモートホストからロボットによるアクセスが多い場合などにご活用下さい。
リモートホストは、IPアドレスからの逆引き(gethostbyaddr)によって取得します。
除外するIPやリモートホストを、1行ごとに1つ入力して下さい。
次のワイルドカードが使えます。
? = 1文字(半角英数字、ドット“.”、ハイフン“-“)
* = 1文字以上(半角英数字、ドット”.”、ハイフン“-“)
! = 1文字(半角数字のみ)
~ = 1文字以上(半角数字のみ)

例:”123.456.???.123”⇒123.456.789.123 など(123.456.78.123は除外されません)
例:“*.example.com”⇒123.456.789.123.example.com、1-2-3-4.rooter.example.com など
テキストエリア3)
usrExclusion除外するユーザー・ユーザーグループ
ここで指定したユーザー及びユーザーグループに所属するユーザーからのアクセスはカウントされません。
除外するユーザーあるいはユーザーグループを、半角カンマ区切りで入力して下さい。
1行文字列4)
cntrExclusion除外する国
これらの国からのアクセスはカウントされません。特定の国からロボットによるアクセスが多い場合などにご活用下さい。
国コードは、「cc.wariate.jp」のDNSサービスにより取得します(日本語による詳細)。
2文字の国コード(ISO 3166-1 alpha-2)を、半角カンマ区切りで入力して下さい。
1行文字列5)
cntrInclusionカウントする国の指定
このオプションで国を指定すると、これらの国からのアクセス「のみ」カウントされます。
国コードは、「cc.wariate.jp」のDNSサービスにより取得します(日本語による詳細)。
2文字の国コード(ISO 3166-1 alpha-2)を、半角カンマ区切りで入力して下さい。
1行文字列6)
reverseLookupFailedIP→リモートホスト の逆引きに失敗した場合、カウンターから除外する(ロボットのIPアドレスは逆引きを拒否するケースが多いです)ブーリアン型0
reverseLookupException上のオプション「reverseLookupFailed」の例外となるIPアドレス
対象のIPを、1行ごとに1つ入力して下さい。
次のワイルドカードが使えます。
? = 1文字
* = 1文字以上

例:“123.456.???.123”⇒123.456.789.123 など(123.456.78.123は除外されません)
例:“123.*.789.123”⇒123.456.789.123、123.9.789.123 など
テキストエリア7)
reverseLookupCntrException上のオプション「reverseLookupFailed」の例外となる国
国コードは、「cc.wariate.jp」のDNSサービスにより取得します(日本語による詳細)。
2文字の国コード(ISO 3166-1 alpha-2)を、半角カンマ区切りで入力して下さい。
1行文字列8)
sfsExFreq訪問者のIPアドレスのFrequency Scoreをチェックしてスパムをカウンターから除外するかどうか(Stopforumspam2プラグインが必要です)
“0”を入力するとチェックを行いません。0でない場合はチェックします。このオプション特有の基準値を指定出来ます。“-1”を入力すると、Stopforumspam2プラグインの設定“freqBorder”で指定した値が基準値となりますが、0より大きい値を入力すると、それが基準値となります
数字(-1以上)0
sfsExConf訪問者のIPアドレスのConfidence Scoreをチェックしてスパムをカウンターから除外するかどうか(Stopforumspam2プラグインが必要です)
“0”を入力するとチェックを行いません。0でない場合はチェックします。このオプション特有の基準値を指定出来ます。“-1”を入力すると、Stopforumspam2プラグインの設定“confidenceBorder”で指定した値が基準値となりますが、0より大きい値(100以下)を入力すると、それが基準値となります。
数字(1-~100)0
saveLogWikiにアクセスがあった際にIPアドレスと日付時刻を記録する
ログはページ毎に保存されます。カウンターから除外するIPアドレスやリモートホスト、国を決める際にご活用下さい。
ログファイルは、キャッシュディレクトリ(デフォルトの設定の場合はデータディレクトリ内にある)のaccscounterlogディレクトリ内に保存されます。必要に応じてファイルの抽出や削除を行って下さい。
0(記録しない)、ppage(記録する(ファイルを日付ごとに分ける事はしない))、pdate(記録する(ファイルは日付ごとに分ける))からのプルダウン選択0

開発

変更履歴

  • 2018-07-02
    • 最初のリリース
  • 2018-07-17
    • バグ修正(プラグイン動作時に時々、明日の日付で操作(ログ記録・人気順表示)が行われる問題が生じていました)
  • 2018-08-08
    • バグ修正(ディレクトリ作成を経ずにファイルを書き込もうとするという、初歩的なミスを犯していました)
  • 2018-08-29
    • htaccessファイルの追加
  • 2018-10-30
    • 大規模なアップデート!! ブラックリスト機能や、ログ保存システムを追加。
  • 2019-02-10
    • Farmerプラグインのようなプラグインと互換性を持つようにするため、プラグインのデータの保存先を変更しました。元の保存先に残っているデータは移動もしくは削除出来ます。プラグインをアップデートした後に表示される通知をご参照下さい。
    • Stopforumspam2プラグインを使った機能を追加しました。
  • 2019-03-12
    • プラグインのアンインストールを容易にするため、プラグインのデータの保存先を再び変更しました。元の保存先に残っているデータは移動もしくは削除出来ます。プラグインをアップデートした後に表示される通知をご参照下さい。
    • データマネージャーの機能を追加しました。
  • 2019-10-21
    • オプションcntrInclusionを追加しました。
  • 2019-11-07
    • 不具合の修正。

既知のバグや問題

(現在無し)

やる事リスト

もし何か物足りない点があるのであれば言って下さい。なるべく頑張ります。

お問い合わせ

もし何かあればGitHubのページにトピックを作成出来ます。それ以外の件については、以下の連絡先を使えます。

議論

1)
元のプラグインのライセンスに則っています
2) , 3) , 4) , 5) , 6) , 7) , 8)
何も入力されていません
ja/plugin/accscounter.txt · 最終更新: 2019-11-07 14:25 by hokkaidoperson

特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki