質問箱/5035

カテゴリサイト管理・運営
サマリ今日の日付を検索し、一覧を表示する
バージョン1.4.7
投稿者スギナミ?
状態完了
投稿日2011-01-27 (木) 17:22:42

質問

お世話になります。

トラッカーなど、蓄積されたページ内から
本日の日付が入っているページ
を検索し、表示したいと思っています。

たとえば、数か月前に

「○○の作業を2011-01-27までに対応する。」

といった内容を hoge/fuga ページに残していた場合、当日がやってきたら

2011-01-27の検索結果

- hoge/fuga

という検索結果をページ内に常に出力するようにしたいです。
(負荷はかかるでしょうが、全ページを検索対象としてFrontPageに出力したい)

page_search.inc.phpプラグイン?を利用してみましたが、
静的なキーワードでしか検索ができないように感じたため質問を投稿しました。
ご教授頂ければ幸いです。

回答

  • ページ名の相対表記からの変換もそうですが、プラグイン側で対応していないと動的なパラメータは扱えないですからね。それで、「常に出力する」というのはどのページを表示していても出力するという解釈でいいのでしょうか? -- 2011-01-27 (木) 18:29:14
    • どのページを表示していても出力するにはスキンの内部で処理をすることになるので、プラグイン側が動的なキーワードに対応していなくても、スキン内でキーワードを作ってからプラグインに渡すことで擬似的に対応させられます。日付のキーワードを作るならget_date('Y-m-d')の実行結果を使えばいいでしょう。スキン内でプラグインを使う方法は質問箱/4547などを参照。 -- 2011-01-27 (木) 19:56:19
  • 「プラグイン側で対応していないと動的なパラメータは扱えない」とのことですのでpage_searchをいじることで対応しました。
    +     if ($regex == '&GETDATE') $regex = '/' . get_date('Y-m-d') . '/';
          if ($page == '') $page = strip_bracket($vars['page']);
    と記述して、FrontPageには
    &page_search('',&GETDATE);
    と記述することで一覧表示できました。
    今回は利用しませんでしたが、スキン内キーワードを利用するのテクニックは勉強になりました。ありがとうございました。 -- スギナミ? &new([nodate]){date}: Invalid date string;


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2011-01-31 (月) 13:33:44
Site admin: PukiWiki Development Team

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

OSDN