Скрипт «Добавление кастомного пункта меню в системное меню»
Небольшой полезный скрипт, с помощью которого можно добавить любой пункт меню в системное меню на GetCourse
Часто бывает так, что чтобы зайти в конкретный раздел на платформе, нужно сделать много кликов или знать конкретный адрес страницы. Благодаря данному скрипту больше не нужно будет сидеть и искать страницу, а она будет вынесена сразу в системное меню
— Иметь право «Может настраивать аккаунт» (выдается с помощью главного аккаунта на платформе)
(() => {
/**
* Plugin Name: Добавление кастомного пункта меню в системное меню
* Description: Скрипт позволяет добавить любой пункт меню по своему желанию в системное меню в разделе "Настройки аккаунта" на GetCourse
* Version: 1.0
* Author: Трофимов Никита Игоревич (Бородатый Геткурс)
* Author URL: https://t.me/NiktarioN
*/
const addNewItemMenuToMainSettingMenu = () => {
//////////////////////////////////////////////////////////////////////////////////////
// ПАНЕЛЬ УПРАВЛЕНИЯ. НАЧАЛО
// Указываем pathname для системной страницы
const PAGE_MAIN_SETTINGS_PATHNAME = '/saas/account';
// Указываем селектор блока главного меню на системной странице
const MAIN_MENU_BLOCK_SELECTOR = '#yw0';
/**
* Массив со значениеми кастомных пунктов меню
* Значения массива, относящиеся к одному пункту меню, оборачиваем в []
* Пишем значения массива в одинарных кавычках
* Перечисляем значения массива через запятую
* Значения массива:
* 1 - Заголовок пункта меню
* 2 - Ссылка без домена на нужную страницу
*/
const NEW_MENU_ITEMS_ARRAY = [
['API', '/saas/account/api'],
['Настройки тегов', '/pl/tag/index'],
['Причины отказа от заказа', '/pl/list-value/index?objectType=14'],
];
//////////////////////////////////////////////////////////////////////////////////////
// ПАНЕЛЬ УПРАЛЕНИЯ. КОНЕЦ
if (!window.location.pathname.includes(PAGE_MAIN_SETTINGS_PATHNAME)) {
return;
}
mainMenuBlock = document.querySelector(MAIN_MENU_BLOCK_SELECTOR);
if (!mainMenuBlock) {
return;
}
const createNewMenuItem = (title, link) => {
const item = document.createElement('li');
item.innerHTML = `<a href="${link}">${title}</a>`;
return item;
};
NEW_MENU_ITEMS_ARRAY.forEach(([title, link]) => {
mainMenuBlock.appendChild(createNewMenuItem(title, link));
});
};
window.addEventListener('DOMContentLoaded', addNewItemMenuToMainSettingMenu);
})();📍 Скрипт желательно добавлять через темы и активировать на всей платформе в разделе «Счетчики и скрипты»
💭 Обсудить решение можно под этим постом: https://t.me/borodach_getcourse/319
Мой канал в Telegram: https://t.me/borodach_getcourse
Мой канал на YouTube: https://www.youtube.com/channel/UCkI_5scRF3PAMeyD06EphTQ