Как многим известно, у ЖШ с сортировкой недоработки. Так вот периодически используя импорт, добавляются некоторые атрибуты, характеристики и их значения, и конечно же они не сортируются. После чего приходится заходить в опции атрибута и сортировать вручную.
Надоело.
Как я неоднократно упоминал, надо всего лишь немного воображения и логики. Результат:
Для атрибутовОткрываем файл
\administrator\components\com_jshopping\controllers\attributesvalues.phpИщем функцию saveorder(), и в ней после
$attr_id = JRequest::getInt("attr_id");
Добавляем
$table = &JTable::getInstance('attributValue', 'jshop');
$AttributeValues = $table->getAllValues($attr_id);
UnSet($table);
$AllAttributeValues = Array();
ForEach($AttributeValues As $AttributeValue){
$AllAttributeValues[$AttributeValue->value_id] = $AttributeValue->name;
}
Array_MultiSort($AllAttributeValues, SORT_STRING, $cid);
ForEach($AllAttributeValues As $Key => $AllAttributeValue){
$order[$Key] = $Key;
}
Теперь при нажатии на кнопку сохранить сортировку на этой странице (
/administrator/index.php?option=com_jshopping&controller=attributesvalues&task=show&attr_id=тут номер атрибута) значения отсортируются по строковым значениям.
Для характеристикОткрываем файл
\administrator\components\com_jshopping\controllers\productfieldvalues.phpИщем функцию saveorder(), и в ней после
$field_id = JRequest::getInt("field_id");
Добавляем
$_ProductFieldValues = &$this->getModel("productFieldValues");
$ProductFieldValues = $_ProductFieldValues->getList($field_id);
UnSet($_ProductFieldValues);
UnSet($order);
$AllProductFieldValues = Array();
ForEach($ProductFieldValues As $ProductFieldValue){
$AllProductFieldValues[$ProductFieldValue->id] = $ProductFieldValue->name;
}
Array_MultiSort($AllProductFieldValues, SORT_STRING, $cid);
ForEach($AllProductFieldValues As $Key => $AllProductFieldValue){
$order[$Key] = $Key;
}
Теперь при нажатии на кнопку сохранить сортировку на этой странице (
/administrator/index.php?option=com_jshopping&controller=productfieldvalues&field_id=тут номер характеристики) значения отсортируются по строковым значениям.
P.S.
Теряется возможность указывать сортировку вручную указав номера (Только стрелками вверх и вниз)