Dleshka.org
Авторизация

Скачать Выбор количества новостей

0
TipTop 22-05-2016 Mодули DLE 0 комментариев
Выбор количества новостей


Данный модуль позволяет пользователям самим выбирать количество новостей, которые будут выводиться на странице.

В шаблоне выводится обыкновенный select и выглядит это примерно следующим образом:



Разумеется стили можно настроить как душе угодно.

В шаблоне используется код:
<form method="post">
    Фильмов на страницу: <select name="set_news_number" onchange="ShowLoading();$(this).parents('form').submit();">&#123;include file="engine/mods/news_number.php?echolist=1"}</select>
</form>


Создать файл engine/mods/news_number.php с содержимым:
<?PHP
/* Смена количества новостей на странице */
if(!defined('DATALIFEENGINE'))die("Hacking attempt!");

$aviable_news_numbers = array(10,30,50,80,100);

if($echolist){
    foreach($aviable_news_numbers as $v){
        echo "<option".($v==$config['news_number']?" selected":"").">$v</option>";
    }
}else{
    if(isset($_POST['set_news_number']) AND in_array($_POST['set_news_number'],$aviable_news_numbers)) $config['news_number'] = $_SESSION['news_number'] = intval( $_POST['set_news_number'] );
    elseif(isset($_SESSION['news_number']) AND in_array($_SESSION['news_number'],$aviable_news_numbers)) $config['news_number'] = $_SESSION['news_number'];
}

где 10,30,50,80,100 - значения разрешенные для выбора.

Открыть файл engine/engine.php
Найти строку:
   $config['news_number'] = intval ( $config['news_number'] );
ПЕРЕД ней вставить:
////////////////////////////////////////////////////////////////////////////////////////
        include_once ENGINE_DIR."/mods/news_number.php";
////////////////////////////////////////////////////////////////////////////////////////
Найти строку:
            $cache_prefix .= "_tempate_" . $config['skin'];

После нее вставить:
////////////////////////////////////////////////////////////////////////////////////////
            $cache_prefix .= "_".$config['news_number'];
////////////////////////////////////////////////////////////////////////////////////////


Пример работы можно посмотреть на демо сайте

С уважением,
Олег Александрович a.k.a. Sander
Информация
Зарегистрируйтесь чтобы комментировать публикацию.
Авторизация