popular2.inc.php

サマリpopular プラグイン拡張。昨日の人気を表示できる。
リビジョン1.0
対応バージョン1.4.4
投稿者sonots
投稿日2005-01-15 (土) 03:29:22

説明

sonots:popular2.inc.php に引っ越しました。

標準プラグイン popular の拡張*1です。popular の機能はそのまま使えるのでとりあえず置き換えておいても損はないのかも。

人気のある(アクセス数の多い)ページの一覧を表示します。 通算および今日および昨日および最近(昨日+今日)に別けて一覧を作ることができます。 counter プラグインのアクセスカウント情報を使っています。

関連:(dev:BugTrack/770)(dev:BugTrack/623)(dev:BugTrack/683)

標準プラグインからの変更点(初版)

  • counter には昨日の情報もあり、せっかくなので昨日の n 件、最近(昨日+今日)の n 件も表示できるようにした

その後の追加機能

  • 最下層のページだけをリスト候補とする機能
  • 人気の n 件などのタイトル出力をしない機能
  • ページ名を短く表示する機能

書式

  • 第一引数 - 表示する件数を指定。default 10
  • 第二引数 - 表示させないページの正規表現。default なし
  • 第三引数 - 通算(total,false)か今日(today,true)か昨日(yesterday)か最近(recent)*2の一覧かのフラグ 。default total
  • 第四引数以降
    • deepest
      最下層のページだけをリスト候補とする。上の階層のページがただの一覧用のページでアクセス数が多いのは当たり前だったりする時に使用。つまり /hoge/foo と /hoge/foo/bar, /hoge/foo/aha というページが合った場合、/hoge/foo を出力しない。
    • notitle
      人気の n 件などタイトル出力をしない。
    • short
      表示ページ名を短く。具体的には /hoge/foo/bar が bar とだけ表示される。

使用例

  • #popular2
  • #popular2(20)
  • #popular2(20,FrontPage|MenuBar)
  • #popular2(20,FrontPage|MenuBar,today)
  • #popular2(20,FrontPage|MenuBar,today,deepest)
  • #popular2(20,,today,short,deepest)
  • #popular2(,,,,notitle)

設定

ja.lng ファイルに

$_popular_plugin_frame = '<h5>人気の%d件</h5><div>%s</div>';
$_popular_plugin_today_frame = '<h5>今日の%d件</h5><div>%s</div>';
$_popular_plugin_yesterday_frame = '<h5>昨日の%d件</h5><div>%s</div>';
$_popular_plugin_recent_frame = '<h5>最近の%d件</h5><div>%s</div>';
$_popular_plugin_notitle_frame = '<div>%s</div>';

en.lng ファイルに

$_popular_plugin_frame = '<h5>popular(%d)</h5><div>%s</div>';
$_popular_plugin_today_frame = '<h5>today\'s(%d)</h5><div>%s</div>';
$_popular_plugin_yesterday_frame = '<h5>yesterday\'s(%d)</h5><div>%s</div>';
$_popular_plugin_recent_frame = '<h5>recent\'s pop(%d)</h5><div>%s</div>';
$_popular_plugin_notitle_frame = '<div>%s</div>';

のように追加してください。 lng ファイルで設定していなくても一応上のように動くようにしています。 が、やはり lng ファイルで設定するのが本筋です。

ダウンロード

拡張子の番号をはずして plugin フォルダに放りこんでください。#popular として利用したい場合は、ファイル名を popular.inc.php に変更後、ファイル中の popular2 という文字列を popular にすべて置換してください。

リビジョン日付変更点
filev1.31/17/2005通算を all から total に変更したはずだったのに all のままだったので改めて total に。deepest オプションで穴がある可能性が考えられたので修正。
filev1.21/14/2005lng 設定が <h5> タグではなく <h2> タグに自分で変更していたのを忘れて間違って書いていたので修正。そのための notitle だったのに。
filev1.11/14/2005初版といえば初版

それ以前は dev:BugTrack/770 にあったりします。


  • 機能的にはグッドなのですが、パフォーマンスがかなり遅いことに気づきました。残念です。 -- ari? 2008-09-30 (火) 17:03:08
  • 今日の閲覧が0だと、昨日が表示されないのではないでしょうか? -- 2011-08-08 (月) 08:49:18
    • ↑。失礼しました。タイムゾーンの問題でした。 -- 2011-08-08 (月) 08:53:50
  • 引越し先にも昨日コメントを残しましたが、こちらにも書いておきます。#popularで「今日」126件あったのが、日付をまたいで#popular2で「昨日」になったら42件に減るということがありました。どこかがおかしいような気がするのですが、いかがでしょうか?以下で使っています。http://konton.cside.com/index.php?go=lgw2sc -- 混沌? 2012-09-19 (水) 00:18:40
    • counterプラグイン側のカウントの問題なような気がする。dev:BugTrack2/141質問箱5/104とかを参照してください。 -- 2012-09-19 (水) 00:36:25
    • ありがとうございます。両方とも読みましたが、私のレベルでは対応できないようです。UTIMEを削除してみようと思いましたが、そももそUTIMEがありませんでした。 -- 混沌? 2012-09-20 (木) 08:48:04
  • 除外キーワード だけでなく、「指定キーワード」の中だけで、ランキング表示できれば、より便利かと思います。 -- 2012-09-20 (木) 01:32:40

*1 popular v1.12の拡張
*2 counterプラグインの仕様上、昨日 + 今日程度しかできませんが

添付ファイル: filepopular2.inc.php.3 2280件 [詳細] filepopular2.inc.php.2 1585件 [詳細] filepopular2.inc.php.1 1620件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-06-24 (火) 17:41:07
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u1. HTML convert time: 0.345 sec.

OSDN