Вставка заголовков в списке уроков GetCourse

Вставка заголовков в списке уроков GetCourse

Как организовать разбивку на подтемы внутри модуля? Если в каждом разделе уроков больше 4-5, то лучше разделить на подтренинги. А если всего по 2-3 урока, то это лишь усложнит навигацию: сначала нужно зайти в тренинг, потом в модуль, потом в раздел и только потом в нужный урок.

Для случаев, когда общее количество уроков модуля не больше 20-25 (иначе вместо сложной навигации будет долгое листание), решил использовать заголовки в списке уроков, которые будут «отбивать» блоки уроков модуля по темам или по неделям.

Для этого с помощью нейросети набросал простой и удобный скрипт:

document.addEventListener("DOMContentLoaded", function () {
  const headers = [
    { id: "000000000", title: "Раздел 1. Название раздела" },
    { id: "000000000", title: "Раздел 2. Название раздела" },
    { id: "000000000", title: "Раздел 3. Название раздела" },
    { id: "000000000", title: "Раздел 4. Название раздела" },
    { id: "000000000", title: "Раздел 5. Название раздела" },
  ];

  headers.forEach(header => {
    const lessonElement = document.querySelector(`li[data-lesson-id="${header.id}"]`);
    if (lessonElement) {
      const h3 = document.createElement("h3");
      h3.textContent = header.title;
      h3.classList.add("submodule-heading"); // если нужно стилизовать
      lessonElement.parentNode.insertBefore(h3, lessonElement);
    }
  });
});

Добавляя и удаляя строки с идентификаторами уроков, вы можете добавить столько заголовков, сколько вам нужно. Вместо нулей подставляете идентификатор урока, перед которым должен быть заголовок. И, соответственно, в кавычках пишете нужный текст.

Узнать идентификатор урока можно или в исходном коде страницы через инспектор вашего браузера — вам нужен атрибут data-lesson-id="000000000". Или из ссылки страницы урока:

.../pl/teach/control/lesson/view?id=000000000&editMode=0

Сам скрипт вставьте в настройках вида (кнопка Действия — Настроить вид) нужного тренинга или подтренинга с помощью блока JavaScript. В любом месте, но лучше в самом низу.

Подписаться
Уведомить о
guest


0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Прошу прощения за это всплывающее окно, но закон обязывает уведомить вас о том, что сайт собирает cookies. Продолжая использовать сайт, вы соглашаетесь с Политикой конфиденциальности