Вы не зашли.
includes - news.php
найти:
$orderBy = "pinned desc, ".$config['default_newsorder'];
заменить на
$orderBy = "postdate desc, ".$config['default_newsorder'];
Изменено vairus (2009-06-13 01:47:07)
Не в сети
эм, я может быть туплю, но разве
Настройки - Управление категориями - Редактировать - Порядок сортировки внутри категории
это не то, что тебе нужно? там и ID и дата и даже по рейтингу. задать новую дату для новости можно во время её редактирования на вкладке Дополнительно.
кстати, хотелось бы попросить хак или плагин, коорый бы позволял пользователю выбирать тип сортировки: дата, просмотры и рейтинг. это наверняка совсем не сложно и еще на шажок приблизило бы CMS к функциональности каталога.
делай, что надо и будь, что будет
Не в сети
я ведь все объяснил. меняешь тип сортировки, а при редактировании задаешь новую дату.
это всем публикующим объявить предлагаешь? + ко всему во вкладке дополнительно вручную вбивать текущую дату и время?
Изменено panoptus (2009-06-14 23:24:47)
Не в сети
у тебя десятки новостей каждый день требуют обновления? в таком случае извини, что предложил неподходящее решение. просто сам пользуюсь периодически и никаких проблем не испытываю.
Изменено SeeD (2009-06-15 00:07:25)
делай, что надо и будь, что будет
Не в сети
/engine/actions/configuration.php
Найти
'default_newsorder' => MakeDropDown(array('id desc' => $lang['order_id_desc'], 'id asc' => $lang['order_id_asc'], 'postdate desc' => $lang['order_postdate_desc'], 'postdate asc' => $lang['order_postdate_asc'], 'title desc' => $lang['order_title_desc'], 'title asc' => $lang['order_title_asc']), "save_con[default_newsorder]", $config['default_newsorder']),
Заменить на
'default_newsorder' => MakeDropDown(array('id desc' => $lang['order_id_desc'], 'id asc' => $lang['order_id_asc'], 'postdate desc' => $lang['order_postdate_desc'], 'postdate asc' => $lang['order_postdate_asc'], 'editdate desc' => "дате редактирования / убывание", 'editdate asc' => "дате редактирования / возрастание", 'title desc' => $lang['order_title_desc'], 'title asc' => $lang['order_title_asc']), "save_con[default_newsorder]", $config['default_newsorder']),
/engine/includes/news.php
Найти
if (in_array($config['default_newsorder'], array('id desc', 'id asc', 'postdate desc', 'postdate asc', 'title desc', 'title asc'))) {
Заменить на
if (in_array($config['default_newsorder'], array('id desc', 'id asc', 'postdate desc', 'postdate asc', 'editdate desc', 'editdate asc', 'title desc', 'title asc'))) {
/engine/includes/inc/functions.inc.php
Найти
function OrderList($value) {
global $lang, $catz;
$output = "<select name=\"orderby\">\n";
foreach (array('id desc', 'id asc', 'postdate desc', 'postdate asc', 'title desc', 'title asc', 'rating desc', 'rating asc') as $v) {
$vx = str_replace(' ','_',$v);
$output.='<option value="'.$v.'"'.(($value==$v)?' selected="selected"':'').'>'.$lang["order_$vx"]."</option>\n";
}
$output.="</select>\n";
return $output;
}
Заменить на
function OrderList($value) {
global $lang, $catz;
$lang['order_editdate_desc'] = "дате редактирования / убывание";
$lang['order_editdate_asc'] = "дате редактирования / возрастание";
$output = "<select name=\"orderby\">\n";
foreach (array('id desc', 'id asc', 'postdate desc', 'postdate asc', 'editdate desc', 'editdate asc', 'title desc', 'title asc', 'rating desc', 'rating asc') as $v) {
$vx = str_replace(' ','_',$v);
$output.='<option value="'.$v.'"'.(($value==$v)?' selected="selected"':'').'>'.$lang["order_$vx"]."</option>\n";
}
$output.="</select>\n";
return $output;
}
Не в сети
insider, спасибо. Я видимо не до конца изложил мысль по сортировке - бывает ведь когда новость не редактировалась вообще. Нередактированные новости, судя по всему, сортируются "по ID - убывание"... Не знаю что тут можно придумать... Самый лучший вариант был бы, чтоб у нередактированных новостей в поле "дата редактирования" была дата создания.
ЗЫ: В новый движок этот патч войдет?
Изменено panoptus (2009-06-15 11:53:35)
Не в сети
Вполне возможно.
Основной вопрос в том, что надо будет менять логику хранения информации в поле `дата обновления`.
Сейчас если новость не редактировалась - там стоит 0, а чтобы правильно заработало то, что хочешь ты - там должна стоять дата создания новости.
Не в сети
Сейчас если новость не редактировалась - там стоит 0, а чтобы правильно заработало то, что хочешь ты - там должна стоять дата создания новости.
этого я и добиваюсь
Не в сети
id desc
id asc
postdate desc
postdate asc
title desc
title asc
Не в сети
В настройках категории.
Не в сети
Для последних версий NG:
1) В engine/includes/inc/functions.inc.php найти:
foreach (array('id desc', 'id asc', 'postdate desc', 'postdate asc', 'title desc', 'title asc', 'rating desc', 'rating asc') as $v) {
Заменить:
foreach (array('id desc', 'id asc', 'postdate desc', 'postdate asc', 'title desc', 'title asc', 'rating desc', 'rating asc', 'xfields_rub desc', 'xfields_rub asc') as $v) {
2) В /engine/lang/russian/admin/categories.ini добавить:
order_xfields_rub_desc = "По xfields_rub / убывание"
order_xfields_rub_asc = "По xfields_rub / возрастание"
В /engine/lang/russian/admin/configuration.ini добавить:
order_xfields_rub_desc = "По xfields_rub / убывание"
order_xfields_rub_asc = "По xfields_rub / возрастание"
3) В /engine/includes/inc/libnews.php найти:
if (!in_array($orderBy, array('id desc', 'id asc', 'postdate desc', 'postdate asc', 'title desc', 'title asc')))
Заменить на:
if (!in_array($orderBy, array('id desc', 'id asc', 'postdate desc', 'postdate asc', 'title desc', 'title asc', 'xfields_rub desc', 'xfields_rub asc')))
4) В /engine/skins/default/tpl/configuration.tpl найти:
{{ mkSelect({'name' : 'save_con[default_newsorder]', 'value' : config['default_newsorder'], 'values' : { 'id desc' : lang['order_id_desc'], 'id asc' : lang['order_id_asc'], 'postdate desc' : lang['order_postdate_desc'], 'postdate asc' : lang['order_postdate_asc'], 'title desc' : lang['order_title_desc'], 'title asc' : lang['order_title_asc'] } }) }}
Заменить на:
{{ mkSelect({'name' : 'save_con[default_newsorder]', 'value' : config['default_newsorder'], 'values' : { 'id desc' : lang['order_id_desc'], 'id asc' : lang['order_id_asc'], 'postdate desc' : lang['order_postdate_desc'], 'postdate asc' : lang['order_postdate_asc'], 'title desc' : lang['order_title_desc'], 'title asc' : lang['order_title_asc'], 'xfields_rub asc' : lang['order_xfields_rub_asc'], 'xfields_rub desc' : lang['order_xfields_rub_desc'] } }) }}
Не в сети