• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь Как в ссылке указать способ сортировки?

drkrol

Постоялец
Регистрация
6 Мар 2016
Сообщения
112
Реакции
11
Здравствуйте. У меня на главной странице должны быть 2 ссылки отсылающие на одну и ту же категорию. Категория называется, например, "игры". Первая ссылка "Популярные игры", вторая "Последние игры". Первая ссылка отсылает пользователя в категорию /game, где новости будут отсортированы по кол-ву просмотров, а вторая - где новости отсортированы по дате добавления. Как это реализовать? Как сделать такую ссылку ? Что-то типа /game?sort=data и /game?sort=view

В dle за сортировку отвечает отдельная ссылка: <a onclick="dle_change_sort('news_read','desc'); return false;" href="#"></a> . Но как её привязать к ссылке /game, я не знаю...
 
Но как её привязать к ссылке /game, я не знаю...
данная фитча мне не известна! как вариант - использовать фильтр DLE (любой из:(
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
 
данная фитча мне не известна!
Вот этот код взят из простой dle 11 <a onclick="dle_change_sort('news_read','desc'); return false;" href="#">сортировать по просмотрам</a>. Просто нужно как-то запустить выполнение этого кода на новой странице. То, что ты мне предложил, никак не решит проблему. У меня просто появятся новые способы сортировки, но сортировать новости сразу в новой вкладке я не смогу.
 
То, что ты мне предложил, никак не решит проблему. У меня просто появятся новые способы сортировки, но сортировать новости сразу в новой вкладке я не смогу.
Так нет возможности передать параметр сортировки в ссылке штатным функционалом! Из модулей где это есть - выбирай выше...
Либо ставь {sort} чтобы пользователи сами выбирали по какому параметру им выводит новости!!!
 
Не проще через custom сделать? ))
 
Не проще через custom сделать? ))
как же я потом ссылку на этот custom сделаю?
Ну, в принципе, я уже решил эту задачу. По-русски я её решил. Теперь у меня не будет раздела, где новости сортированы по просмотрам.
 
как же я потом ссылку на этот custom сделаю?
Статические страницы с нестандартным tpl в помощь...
Вариант кривой, конечно, но как вариант...

А так, engine.php в вашем распоряжении. Править, скорее всего, это:
PHP:
			if ($cat_info[$category_id]['news_sort'] != "") $news_sort_by = $cat_info[$category_id]['news_sort'];
			if ($cat_info[$category_id]['news_msort'] != "") $news_direction_by = $cat_info[$category_id]['news_msort'];
На выходе получить примерно такое:
PHP:
			if ($_GET['sort'] == 1) {
                $news_sort_by = 'news_read';
                $news_direction_by = 'desc';
            }
            else {
                if ($cat_info[$category_id]['news_sort'] != "") $news_sort_by = $cat_info[$category_id]['news_sort'];
                if ($cat_info[$category_id]['news_msort'] != "") $news_direction_by = $cat_info[$category_id]['news_msort'];
            }
Дописываем &sort=1 (если без ЧПУ ?sort=1) к ссылке и вуаля... Правда при переходе на следующую страницу оно сбросится...
Можно добавить хранение в куке/сессии или ещё как-нить заморочиться... Смысл я показал

Ах, да, ещё забыл...
В DLE есть 2 переменные, вот код использования (тот же engine.php) :
PHP:
				if (isset ( $_SESSION['dle_sort_cat'] )) $news_sort_by = $_SESSION['dle_sort_cat'];
				if (isset ( $_SESSION['dle_direction_cat'] )) $news_direction_by = $_SESSION['dle_direction_cat'];
Собственно, можно вместо задачи $news_sort_by и $news_direction_by задавать сразу сессию... Сессия имеет приоритет над другими настройками (включая админские), но применяется глобально ко всем категориям.
Можно поиграьтся с ней...
 
Последнее редактирование:
Назад
Сверху