Программно добавить категории в Joomla можно следующим образом.
JModelLegacy::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_categories/models');
JTable::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_categories/tables');
$categoryModel = JModelLegacy::getInstance('Category', 'CategoriesModel', array('ignore_request' => true));
$child['id'] = 0;
$child['title'] = 'Заголовок категории';
$child['extension'] = 'com_content';
$child['access'] = 1;
$child['metadata'] = '';
$child['published'] = 1;
$child['parent_id'] = $parentId;
$child['params'] = '{"target":"","image":""}';
$child['level'] = $level;
$child['language'] = '*';
$categoryModel->save($child);
$catId = $categoryModel->getState('category.id');