[РЕШЕНО] Вопрос по сортировке разделов

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

Как вы хотите сделать сортировку разделов, по какому признаку?

В первую очередь интересует возможность произвольно задавать порядок следования разделов и подразделов на странице, так же как это можно делать с пунктами меню и страницами. Это нужно когда есть определенная логика в подаче материала, когда нужно вынести вверх наиболее важные разделы, а вниз унести менее важные. Можно конечно с самого начала спроектировать информационную структуру и затем вбить разделы в обратной последовательности, чтобы последние добавленные оказались на верху, но это же не дело, могут появится новые более или менее важные разделы. Поэтому и спрашиваю. Попробовал изменить в базе данных в category поле ordering, вручную проставил цыфры, но результата это не дало, порядок следования разделов не изменился.
Letsgo
Попробуйте такой вариант, но сначала сделайте бекап файла.
файл /components/content/model.php приблизительно 164 строка добавляем сортировку по названию

Код PHP:
  1. public function getSubCats($parent_id, $left_key, $right_key) {
  2.  
  3. $subcats=array();
  4.  
  5. $sql = "SELECT cat.*
  6. FROM cms_category cat
  7. WHERE cat.parent_id = '$parent_id' AND cat.published = 1
  8. ORDER BY cat.title ASC";
  9.  
soulreactor
Prozaik:


Код PHP:
  1.  
  2. ORDER BY cat.title ASC";
  3.  

Огромное спасибо за подсказку! Хоть я и не программист, но выход с вашей помощью нашел, сделал так: ORDER BY cat.ordering ASC"; Теперь можно произвольно настроить порядок разделов задавая последовательность в поле ordering в базе. Ура! smile
Редактировалось: 1 раз (Последний: 25 декабря 2011 в 20:36)
Letsgo
Ну вот и решили вопрос)
soulreactor
Prozaik:

Ну вот и решили вопрос)

Решили, спасибо. Закрываю тему.
Перейти на форум:

Голосуем

Самый нужный компонент