カテゴリ | サイト管理・運営 |
サマリ | 管理者向けrecent |
バージョン | 1.5 |
投稿者 | Tomose |
状態 | 質問 |
投稿日 | |
recent プラグインでは $non_list で指定されたページをリストアップ対象としていませんが、その指定に関係なく全ページの更新を対象にする手段はないでしょうか?
別の言い方をすると、「一般ユーザ向けrecent」と「管理者向けrecent」を作りたい、ということです。
一般ユーザには現状の recentを見せる。
管理者には、$non_listに指定している「管理者(達)だけがr/wできるページ」も含めての recent を見たい。
- 補足。似たような質問に質問箱/2537がありましたが、こちらではRSSでの対応が提案されていました。 -- Tomose
- まず、簡単な手段は用意されていないので、recentプラグインをコピーしてadmin_recentのようなプラグインを作る必要があります。recentプラグインはcache/recent.datに依存していて、そもそもrecent.datに$non_listのページが含まれていません。recent.datのキャッシュを使わず、全ページ列挙して最新のn件を抽出する処理が必要です。処理はlib/file.phpのput_lastmodified()に相当します -- umorigu
- 情報ありがとうございます。内容了解しました。なるほど、履歴記録時点で non_list 対象は記録されていないのですね。 全部貯めておいて表示時に削除・・・とも考えたのですが、そうすると最大履歴数に影響するのか。やはり別立てせざるをえなさそうですね・・・ -- Tomose
- 「全部貯めておいて表示時に削除」でも問題ありません。この場合recent.datの作成部分とrecentプラグインを改造することになります。履歴数(maxshow)は増やせますし -- umorigu