[РЕШЕНО] Вопрос по сортировке разделов
Как изменить порядок следования разделов на странице?

Прошу помочь разобраться как в InstantCMS производится изменение порядка следования разделов. В меню пункты сортируются в списке, с этим проблем нет, а вот когда подразделы выводятся на страницу - они следуют в порядке добавления, сверху публикуется последний добавленный раздел. А как же быть когда нужно изменить порядок разделов на странице? В разделе "Контент" выводится список страниц с возможностью вручную отсортировать их, также сортировать их можно с помощью настроек. А что же разделы? Как сортировать разделы? Или в InstantCMS вообще не предусмотрено такой возможности? Или я что-то упустил из внимания? Буду признателен за помощь и советы.

Prozaik:
Как вы хотите сделать сортировку разделов, по какому признаку?
Как вы хотите сделать сортировку разделов, по какому признаку?
В первую очередь интересует возможность произвольно задавать порядок следования разделов и подразделов на странице, так же как это можно делать с пунктами меню и страницами. Это нужно когда есть определенная логика в подаче материала, когда нужно вынести вверх наиболее важные разделы, а вниз унести менее важные. Можно конечно с самого начала спроектировать информационную структуру и затем вбить разделы в обратной последовательности, чтобы последние добавленные оказались на верху, но это же не дело, могут появится новые более или менее важные разделы. Поэтому и спрашиваю. Попробовал изменить в базе данных в category поле ordering, вручную проставил цыфры, но результата это не дало, порядок следования разделов не изменился.

Попробуйте такой вариант, но сначала сделайте бекап файла.
файл /components/content/model.php приблизительно 164 строка добавляем сортировку по названию
файл /components/content/model.php приблизительно 164 строка добавляем сортировку по названию
Код PHP:
public function getSubCats($parent_id, $left_key, $right_key) { $sql = "SELECT cat.* FROM cms_category cat WHERE cat.parent_id = '$parent_id' AND cat.published = 1 ORDER BY cat.title ASC";

Prozaik:
Код PHP:
ORDER BY cat.title ASC";
Огромное спасибо за подсказку! Хоть я и не программист, но выход с вашей помощью нашел, сделал так: ORDER BY cat.ordering ASC"; Теперь можно произвольно настроить порядок разделов задавая последовательность в поле ordering в базе. Ура!

Редактировалось: 1 раз (Последний: 25 декабря 2011 в 20:36)