フォーラム中のディスカッションを表示した状態で,画面の上の方にフォーラムを検索する”というフォームが現れます.このフォームに検索語を入力して検索を行うと,そのコース内の全てのフォーラムを対象として検索が行われます(これもどうかなぁと思う).特定のフォーラム内だけで検索を行うには,フォームに何も入力しないで”フォーラムの検索”をクリックすると表示される高度なフォーラムの検索画面で,”検索するフォーラム”のプルダウンリストから検索対象とするフォーラムを一つ選べばよい.
この”検索するフォーラム”のリストの一番上に”すべてのフォーラム”という選択肢があります.その下にはそのコース内の全てのフォーラムが列記(これがアルファベット順などに並び替えられていないのもどうかなぁと思います)されます.いま自分が読んでいたフォーラムの名前を覚えていれば問題は無いのですが,もし覚えていたとしてもUsing Moodleのようにフォーラムの数が膨大な数の場合には探すのに手間取る.もし間違えて違うフォーラムを検索するのも怖いですね.
そこでこの”検索するフォーラム”のリスト中に”すべてのフォーラム”同様,”このフォーラム”という選択肢が欲しいです.
いまこの機能が実装されていないのは,高度なフォーラムの検索画面にフォーラムIDを引き渡していないことが原因だと思います.コースの表示から順に高度なフォーラムの検索画面までのURLの変化の例を示します.
- コースの表示(moodle/course/view.php?id=15):idはコースid
- フォーラムのディスカッショントピックの一覧の表示(moodle/mod/forum/view.php?id=364):idはフォーラムid?
- そのうちの一つのトピック(および返信)の表示(mod/forum/discuss.php?d=339):idはディスカッショントピックのid
- ”フォーラムの検索”を押して高度なフォーラムの検索画面を表示(mod/forum/search.php?search=&id=15):idはコースid
- 実際に検索を行う(mod/forum/search.php?id=15&words=Wiki&phrase=¬words=&fullwords=&hfromday=1&hfrommonth=1&hfromyear=1&hfromhour=1&hfromminute=1&htoday=1&htomonth=1&htoyear=1&htohour=1&htominute=1&forumid=115&subject=&user=):idとforumidがある.idはコースidのようだが,forumidは2の数字と異なります.2のidはフォーラムのidではない?
コースidは1から2,3を経由して4に引き渡されているので,URLに含ませる方法とは別の方法で渡している($SESSION?)ようですので,フォーラムidも同様に引き渡されている可能性があります.4の段階でフォーラムidを得られれば,”このフォーラム”を”検索するフォーラム”に組み入れることができそうな気がします.
全フォーラムを対象に検索を行うよりも,現在閲覧中のフォーラム内の検索を行う機会の方が圧倒的に多いのではないでしょうか?