• Автор:

    Flesha
  • Добавлено:

    авг 12, 2013
  • Комментариев:

    1
  • Просмотров:

    2 557

Модуль Сортировка и поиск новостей

Модуль Сортировка и поиск новостей

Модуль,или же хак,предназначен для сортировки и поиску новостей по 1 букве.

Установка:
1.Залить файл в папку с шаблоном.
2.Открыть engine/engine.php
Найти:
} elseif ($catalog != "") {
// ################ Вывод по буквенному идентификатору #################
if ($cstart) {
$cstart = $cstart - 1;
$cstart = $cstart * $config['news_number'];
}

$newsmodule = true;

$url_page = $config['https_home_url'] . "catalog/" . urlencode ( $catalog );
$user_query = "catalog=" . urlencode ( $catalog );

$news_sort_by = ($config['catalog_sort']) ? $config['catalog_sort'] : "date";
$news_direction_by = ($config['catalog_msort']) ? $config['catalog_msort'] : "DESC";

if (isset ( $_SESSION['dle_sort_catalog'] )) $news_sort_by = $_SESSION['dle_sort_catalog'];
if (isset ( $_SESSION['dle_direction_catalog'] )) $news_direction_by = $_SESSION['dle_direction_catalog'];

$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}symbol = '$catalog' AND approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE {$stop_list}symbol = '$catalog' AND approve=1" . $where_date;


Заменить до } else { ) на:
} elseif ($catalog != "" and $_GET['n']) {
// ################ Вывод по буквенному идентификатору N #################
if ($cstart) {
$cstart = $cstart - 1;
$cstart = $cstart * $config['news_number'];
}
$newsmodule = true;
$url_page = $config['https_home_url'] . "cat/" . urlencode ( $catalog );
$user_query = "cat=" . urlencode ( $catalog );

$news_sort_by = ($config['catalog_sort']) ? $config['catalog_sort'] : "date";
$news_direction_by = ($config['catalog_msort']) ? $config['catalog_msort'] : "DESC";

if (isset ( $_SESSION['dle_sort_catalog'] )) $news_sort_by = $_SESSION['dle_sort_catalog'];
if (isset ( $_SESSION['dle_direction_catalog'] )) $news_direction_by = $_SESSION['dle_direction_catalog'];

$sql_select = "SELECT id, autor, date, short_story, SUBSTRING(full_story, 1, 15) as full_story, xfields, title, category, alt_name, comm_num, allow_comm, approve, tags FROM " . PREFIX . "_post WHERE {$stop_list}title LIKE '$catalog%' AND approve" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE {$stop_list}title LIKE '$catalog%' AND approve" . $where_date;


3. Открыть ./htaссess
Найти:
RewriteRule ^catalog/([^/]*)(/?)+$ index.php?catalog=$1 [L]
RewriteRule ^catalog/([^/]*)/page/([0-9]+)(/?)+$ index.php?catalog=$1&cstart=$2 [L]


Ниже добавить:
# вывод в виде каталога
RewriteRule ^cat/([^/]*)(/?)+$ index.php?catalog=$1&n=1 [L]
RewriteRule ^cat/([^/]*)/page/([0-9]+)(/?)+$ index.php?catalog=$1&cstart=$2&n=1 [L]


4. Открыть templates/Ваш шаблон/main.tpl
В любом удобном месте вставить:
{include file="letters.tpl"}


Версия DLE: DLE 9.8-10.0
Тестировалось на DLE 9.8
Убрал косяки: arkasha206

Внимание! У Вас нет прав для просмотра скрытого текста.
dle
Вернуться

Комментарии:


  1. subtek → 20 февраля 2014 12:55
    Коряво находить, мусора много
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.