Wie füge ich eine benutzerdefinierte Registerkarte in der Hauptkursnavigationsleiste hinzu, nicht im Menü "More"?
Posted: 08 Feb 2025, 04:19
Ich entwickle ein Block -Plugin für Moodle und möchte der Hauptkursnavigationsleiste eine benutzerdefinierte Registerkarte hinzufügen (direkt sichtbar, nicht im Menü "More" versteckt). Derzeit fügt mein Code die Registerkarte zum Menü "More" hinzu. Hier ist, was ich bisher habe: < /p>
$context = context_course::instance($COURSE->id);
$coursenode = $PAGE->settingsnav->find('courseadmin', navigation_node::TYPE_COURSE);
if ($coursenode) {
$node = navigation_node::create(
get_string('myblock', 'block_myblock'),
new moodle_url('/blocks/myblock/view.php', ['courseid' => $COURSE->id]),
navigation_node::TYPE_SETTING,
null,
'customnode',
new pix_icon('i/settings', '')
);
$node->showinflatnavigation = true;
$node->forceintomoremenu = false;
$node->showinsecondarynavigation = true;
$node->display = true;
$coursenode->add_node($node, 'filtermanagement');
$node->make_active();
$node->force_open();
}
< /code>
Die Registerkarte wird derzeit im Menü "mehr" hinzugefügt, anstatt in der Kursnavigationsleiste direkt sichtbar zu sein. < /p>
Wie kann ich sicherstellen, dass mein Die benutzerdefinierte Registerkarte wird direkt in der Hauptkursnavigationsleiste angezeigt und nicht unter "More"?
$context = context_course::instance($COURSE->id);
$coursenode = $PAGE->settingsnav->find('courseadmin', navigation_node::TYPE_COURSE);
if ($coursenode) {
$node = navigation_node::create(
get_string('myblock', 'block_myblock'),
new moodle_url('/blocks/myblock/view.php', ['courseid' => $COURSE->id]),
navigation_node::TYPE_SETTING,
null,
'customnode',
new pix_icon('i/settings', '')
);
$node->showinflatnavigation = true;
$node->forceintomoremenu = false;
$node->showinsecondarynavigation = true;
$node->display = true;
$coursenode->add_node($node, 'filtermanagement');
$node->make_active();
$node->force_open();
}
< /code>
Die Registerkarte wird derzeit im Menü "mehr" hinzugefügt, anstatt in der Kursnavigationsleiste direkt sichtbar zu sein. < /p>
Wie kann ich sicherstellen, dass mein Die benutzerdefinierte Registerkarte wird direkt in der Hauptkursnavigationsleiste angezeigt und nicht unter "More"?