Речь идет о сопутствующих товарах, которые задаются товару во вкладке Связи.
Задача выводить товары в той последовательности, в которой добавили эти товары в список сопутствующих в админке. Сейчас они выводятся по id от меньшего к большему.
Всё что придумал, это добавить еще один столбец в таблицу product_related с названием sort.
В это поле добавлять число из input, равное кол-ву дивов родителя id="product_related"
1) В шаблон товара в админке в javascript было внесена переменная n.
$('#product-related' + item['value']).remove();
var n = $("#product-related > div").length;
$('#product-related').append('<div id="product-related' + item['value'] + '"><i class="fa fa-minus-circle"></i> ' + item['label'] + '<input type="hidden" name="product_related[]" value="' + item['value'] + '" /><input id="count" type="hidden" name="product_related_sort[]" value="' + n + '" /></div>');
Не уверен, что это норм вариант, но при добавлении товара добавляется input так как нужно, по моему воображению (а оно может быть не совсем верным).
2) в контроллере товара
if ($related_info) {
$data['product_relateds'][] = array(
'product_id' => $related_info['product_id'],
'name' => $related_info['name'],
'sort' => $related_info['sort']
);
}
3) Осталось подключить базу, но не совсем вытягиваю с sql - мог бы кто-то подсобить? Пробовал по аналогии добавить этот столбец (sort) но не работает, уверен, что где-то накосячил.
Файл модели с моими "каруселями" product.php