Можно попробовать все данные забить в какой-то полнотекстовый поисковый движок.
И забивать в поиске текст текущего поста, таким образом находить более менее похожие.
Как вариант можно взять ElasticSearch
Может тебе подойдёт механизм полегче, с помощью тегов?