Ваш вопрос как минимум не закончен. Для начала нужно уяснить, какие категории могут быть сопутствующими, напр для товар1 - это масла и маски, для товар 2 это кремы и бальзамы, товар3 - маски и кремы (т.е. перекликаются категории сопутствующих товаров, что сделает невозможным добавить их в админке штатными средствами). Далее приходим к вопросу в количестве товаров у Вас на сайте, а также к количеству категорий (и подкатегорий какой-то вложенности). До какой вложенности нужно будет выводить табы (то бишь только категории, или категории 3-ей вложености).
И тут самое интересное, представляем 200-500 одновременных пользователей на сайте, открывающих 200-500 разных товаров. И тут выборка вешается, и Вы прибегаете сюда с просьбой "что-то сделать, потому что сайт тупит".
Может тогда сделать иначе - отдельная таблица в БД, где каждому товару назначать сопутствующие со всеми доп полями (категории в том числе), и при показе обработать только эту таблицу. А потом уже выводить в карточку товара. Тут уже не обойтись без платных услуг.