質問箱/5304

カテゴリサイト管理・運営
サマリ管理者向けrecent
バージョン1.5
投稿者Tomose?
状態質問
投稿日2018-04-13 (金) 11:13:20

質問

recent プラグインでは $non_list で指定されたページをリストアップ対象としていませんが、その指定に関係なく全ページの更新を対象にする手段はないでしょうか?

別の言い方をすると、「一般ユーザ向けrecent」と「管理者向けrecent」を作りたい、ということです。 一般ユーザには現状の recentを見せる。 管理者には、$non_listに指定している「管理者(達)だけがr/wできるページ」も含めての recent を見たい。

回答

  • 補足。似たような質問に質問箱/2537がありましたが、こちらではRSSでの対応が提案されていました。 -- Tomose? 2018-04-13 (金) 11:15:44
  • まず、簡単な手段は用意されていないので、recentプラグインをコピーしてadmin_recentのようなプラグインを作る必要があります。recentプラグインはcache/recent.datに依存していて、そもそもrecent.datに$non_listのページが含まれていません。recent.datのキャッシュを使わず、全ページ列挙して最新のn件を抽出する処理が必要です。処理はlib/file.phpのput_lastmodified()に相当します -- umorigu 2018-04-15 (日) 08:22:26
  • 情報ありがとうございます。内容了解しました。なるほど、履歴記録時点で non_list 対象は記録されていないのですね。 全部貯めておいて表示時に削除・・・とも考えたのですが、そうすると最大履歴数に影響するのか。やはり別立てせざるをえなさそうですね・・・ -- Tomose? 2018-04-15 (日) 20:01:52
  • 「全部貯めておいて表示時に削除」でも問題ありません。この場合recent.datの作成部分とrecentプラグインを改造することになります。履歴数(maxshow)は増やせますし -- umorigu 2018-04-15 (日) 22:17:45


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-04-15 (日) 22:19:04
Site admin: PukiWiki Development Team

PukiWiki 1.5.1+ © 2001-2016 PukiWiki Development Team. Powered by PHP 5.6.33-0+deb8u1. HTML convert time: 0.165 sec.

OSDN