タグが表示されるものとされないものがある原因について

タグが表示されるものとされないものがある原因について

- A H の投稿
返信数: 3

コースの中に「ページ」と「ブック」を作成し

歯車マーク>設定を編集する よりそれぞれにタグをつけました。


ブックの画面を開いたときは画面にタグが表示されているのですが

ページのほうはタグがどこにも表示されていませんでした。


ブックとページの画面のスクリーンショットです。 1枚目ブック 2枚目ページ

ブックの画面


ページの画面




タグで検索をかけると検索結果に「ページ」も出てくるので

タグの設定自体は上手くいっているようです。


タグが画面に表示されるようにする設定が別で必要なのでしょうか?

よろしくお願い致します。

A H への返信

Re: タグが表示されるものとされないものがある原因について

- Mitsuhiro Yoshida の投稿
画像 Developers 画像 Particularly helpful Moodlers 画像 Translators

> タグが画面に表示されるようにする設定が別で必要なのでしょうか?

いいえ、最新のMoodle 3.6.2+ (Build: 20190215) のコード (mod/page/view.php) を確認しましたところ、ページにはタグは表示されない仕様のようです。

かなり大変なプログラム修正だとは思いますが、ブックモジュール (mod/book) のview.phpの243行目あたりを移植してページにもタグを表示できるようになるのではと思います。

if (core_tag_tag::is_enabled('mod_book', 'book_chapters')) {
    echo $OUTPUT->tag_list(core_tag_tag::get_item_tags('mod_book', 'book_chapters', $chapter->id), null, 'book-tags');

よろしければ、代わりに標準の「タグ」ブロックをコースに追加されてはいかがでしょうか。

A H への返信

Re: タグが表示されるものとされないものがある原因について

- Mitsuhiro Yoshida の投稿
画像 Developers 画像 Particularly helpful Moodlers 画像 Translators

恐らく、下記プログラム修正でご希望の動作を実現することができるかと思います。

Moodleバージョン:
Moodle 3.6.2+ (Build: 20190215)

修正対象プログラム:
mod/page/view.php

修正箇所:
90行目

[ 修正前 ]

echo $OUTPUT->box($content, "generalbox center clearfix");

if (!isset($options['printlastmodified']) || !empty($options['printlastmodified'])) {
    $strlastmodified = get_string("lastmodified");
    echo html_writer::div("$strlastmodified: " . userdate($page->timemodified), 'modified');
}

echo $OUTPUT->footer();

[ 修正後 ]

echo $OUTPUT->box($content, "generalbox center clearfix");
echo $OUTPUT->tag_list(core_tag_tag::get_item_tags('core', 'course_modules', $cm->id), null, 'page-tags');

if (!isset($options['printlastmodified']) || !empty($options['printlastmodified'])) {
    $strlastmodified = get_string("lastmodified");
    echo html_writer::div("$strlastmodified: " . userdate($page->timemodified), 'modified');
}

echo $OUTPUT->footer();
添付 page_tags.png
評点平均: お役立ち度: ★★★★★★★ (1)
Mitsuhiro Yoshida への返信

Re: タグが表示されるものとされないものがある原因について

- A H の投稿

返信遅れてしまい申し訳ございません。

ご回答頂きありがとうございます。


設定などではなく、プログラムのほうでそのようになっていたのですね。

頂いた内容でプログラムを修正したところ、タグが表示されるようになりました。


プログラムの修正箇所まで詳しく教えて頂き本当にありがとうございました。