Задача и её решение взяты с форума. Задача была такая:
я написал небольшой модуль "mod_cobalticons" для админки Joomla 3 серии, он просто выводит иконки со ссылками на некоторые страницы. Я хочу, чтобы после инсталляции этого модуля, он автоматически был опубликован в позиции cpanel админки
Для решения этой задачи необходимо создать установочный скрипт и поместить в него следующий код:
getQuery(true); // Публикуем модуль в нужной позиции $query->update($db->quoteName('#__modules')) ->set('position = cpanel') ->set('published = 1') ->where('module = ' . $db->quote('mod_cobalticons')); $db->setQuery($query); $db->execute(); $query->clear(); // Получаем ID модуля $query->select('id') ->from($db->quoteName('#__modules')) ->where('module = ' . $db->quote('mod_cobalticons')); $moduleId = $db->setQuery($query) ->loadResult(); $query->clear(); // Привязываем ко всем пунктам меню $query->insert($db->quoteName('#__modules_menu')) ->columns('moduleid', 'menuid') ->values($moduleId, 0); $db->setQuery($query) ->execute(); } }
Обратите внимание на такой важный момент - если не привязать модуль ко всем пунктам меню, то он не отобразится на панели быстрых иконок.
Удачной разработки!