Суть задачи: объединить варианты одного товара, но с разными характеристиками: например, цветом или весом, на одной странице товара.
Вариант с опциями не рассматриваю, не подходит. Нужно, чтобы осталась имеющаяся структура каталога, один товар - один артикул.
В таблицу product добавляем новую переменную, выводим ее в админке в карточке товара во вкладке данные и назовём ее "Объединить на одной карточке". Она и будет связующим элементов для нужных нам товаров.
Для товаров, которые мы захотим объединить на одной карточке, мы будем в последствии проставлять одно и то же значение в эту переменную.
Например, мы продаем кресла-мешки, которые отличаются по цвету и размеру. Всего в каталоге у нас есть 8 кресел: желтое размером L, красное размером L, синее размером L, черное размером L и такие же 4 цвета размером XL. Т.е. у данных товаров характеристики (атрибуты) идентичны, за исключением Веса и Размера. Для всех этих товаров мы проставим в админке одно и то же значение в созданном нами поле "Объединить на одной карточке", тогда на фронте зайдя в любую карточку из этих товаров, мы увидим варианты схожих моделей и сможем переключаться между ними.
Шаблон Revolution, Opencart 2.1