А если захочешь в будущем изменить стиль вывода или картинку заменить, всю базу будешь перелопачивать? Тем более, что там уже давно ведется запись именно строки юзерагента. В Wordpress плагин брал данные из БД, нормально.Представь страницу с сотней комментов.
Для каждого коммента, при каждом просмотре придется вычислять то что можно получить 1 раз и потом просто брать с базы. Зачем же делать 100 разборов строки если можно сделать 1 ?
P.S. Может, я все-таки не там пытаюсь делать? Может, в компоненте надо, а не в модуле?
UPD1: Я дурак. {$comment.useragent} в шаблоне как раз берет данные сразу из БД, и то, что там в модуле понаписано, его вообще не волнует, из модуля правки убрал, они не нужны. Буду копать компонент.
UPD2: При изменении компонента, в шаблоне ничего не изменяется, хотя кеш чистил. Вообще без понятия, что я не так делаю, но структура Инстанта для меня — это темный лес.
UPD3: Нашел, что нужно править функцию public function getComments($target, $target_id, $cfg) в /components/comments/model.php. В цикле while($comment = $this->inDB->fetch_assoc($result)) если вставить $comment['useragent'] = "123", то во всех комментариях будет выводиться уже не строка юзерагента, а 123. Вот только не могу подключить useragent.php так, чтобы потом вызывалась функция из него, хотя бы detect_browser_version($comment['useragent']).