Скачать Выбор количества новостей
Данный модуль позволяет пользователям самим выбирать количество новостей, которые будут выводиться на странице.
В шаблоне выводится обыкновенный select и выглядит это примерно следующим образом:
Разумеется стили можно настроить как душе угодно.
В шаблоне используется код:
<form method="post">
Фильмов на страницу: <select name="set_news_number" onchange="ShowLoading();$(this).parents('form').submit();">{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