Добрый день. Сегодня расскажу про еще одну интересную задачу поставленную админом одного и из порталов созданных на DLE. Он попросил сделать постраничную навигацию для тега CUSTOM. Дело в том, что на главной странице сайта он выводил новости не тегом {content} как это предусмотрено движком, а тегом CUSTOM указывая из каких именно категорий нужно выводить новости на главную страницу.
Примерно вот таким образом:
[html][not-aviable=main]{content}[/not-aviable]
{custom category="2,7" template="custom" aviable="global" from="0" limit="10" } [/html]
Как работает плагин:
Плагин подключается в шаблоне главной страницы main.tpl. Там же ему передается параметр a_cat: — это список категорий из которых тегу custom нужно вывести новости на главную. Располагается он ниже тега CUSTOM. Он смотрит в базе сколько новостей необходимо вывести и делит их на странички.
Если Вы переходите на другую страничку, 2-ю, 3-ю и.д. плагин ограничивает вывод тега Custom теми новостями которые должны содержаться на 2-ой и 3-й странице соответственно. Визуально это выглядит как обычная навигация по страничкам.
Например подключения в main.tpl:
[html]
[not-aviable=main]{contetn}[/not-aviable]
[aviable=main] {custom category="1,2,3,4" template="shortstory" aviable="main" from="0" limit="5" cache="no"}
<div class="bnnavi">
<div class="navigation">
{include file="custom_page_navi.php?a_cat=1,2,3,4&a_run=main_tpl"}
</div>
</div>
[/aviable]
[/html]
Настройка:
Количество новостей на одну страницу плагин берет из настроек в аминке.
Установка:
В main.tpl подключить. И задать категории из которых выводит новости тег custom. Подключайте его строкой ниже.
Скопировать два файла:
1. custom_page_navi.php в корень сайта
2. custom_page_navi.api.php в папку с модулями \engine\modules
Изменить файл \engine\modules\functions.php
Найти:
[php]
$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, fixed, rating, vote_num, news_read, votes, flag, editdate, editor, reason, view_edit, tags FROM " . PREFIX . "_post WHERE " . $stop_list . $where_category . " AND approve" . $where_date . " ORDER BY " . $fixed . $news_sort . " " . $news_msort . " LIMIT " . $custom_from . "," . $custom_limit;
[/php]
добавить выше:
[php]
if ($a_run=’main.tpl’){ $_SESSION[‘a_run’] =’function.php’; };
include_once ‘custom_page_navi.php’;
[/php]
Живой пример:
Портал на котором работает плагин: urokizagruzi.com
Как его получить:
Сделать запрос по почте или через комментарии.Просто скачать с сайта.
[/note]
Когда установите отправьте мне пожалуйста ссылку на свой сайт.
пагинацию с «custom», можно поставить и без потрошения файлов движка.
Перед кнопками пагинации нужно добавить еще
иначе на страницах, где будет не хватать материалов, кнопки будут идти за последним блоком во 2,3 колонке, а не под всеми новостями.
ТИПА ТАК
—— вот это поставил
{pages}
[prev-link]Назад[/prev-link]
[next-link]Вперед[/next-link]
СКРИН: http://sh.uploads.ru/XRhgs.jpg
Огромное спасибо.
Можно навигацию еще вывести на главной при помощи php
в Ваш шаблон/main.tpl вставляете куда необходимо:
<?php
$url = $_SERVER['REQUEST_URI'];
$b = explode("/", $url);
if ($b[1] == "index.php" or $b[1] == "" or $b[1] == "page")
{
echo "»;
echo «→ Все публикации:»;
$all_page = ceil($count_all / $config[‘news_number’]);
for ($a = 1; $a <= $all_page; $a++)
{
echo "«.$a.» «;}
echo «»;
}
?>
пример здесь http://prokoshek.ru
Добрый день! Скажите пожалуйста, есть ли исправление для 10 версии DLE. Сделав все действия, как описано выше. При переходе на страницу 2,3,4 и т.д. выводит одни и те же новости. Тоесть страница меняется а кол-во новостей, последовательность и сами новости остаются прежними.
Что-то не корректно установили. Если не заработает пишите попробуем исправить.
Добрый день, у меня такой вопрос: если нужно выводить постраничный кастом для 3 разделов?
На сайте сложная структура категорий: разделы категорий выводят список категорий в каждом разделе, а список видео, которые входят во все подразделы, выводится через кастомы.
Подскажите пожалуйста, получиться ли с вашим модулем настроить эти 3 кастома?
Да такое решение я уже делал.
Здравствуйте! Не могу найти нужного в functions.php Нашёл только нечто похожее на указанное. Дословного точно нет. дле 9.7 (лицензия) пробовал ставил над похожим, так навигация не работает. Отображает только одну страницу.
\engine\modules\functions.php
Очень надо плагин Ваш, скинете на мыло?
Отправил на мыло…..
В категории можно сделать навигацию?для кастом?
И можно тоже получить?
Отправил на почту.
Можно по точнее вопрос, не совсем понял какую навигацию?
Отличное решение, как раз столкнулся сейчас с такой проблемой, многоязычный сайт, язык подключается шаблонами, а новости тегом {content} выводят все языки одновременно, беда, а кастомом нельзя, пагинация исчезает. Админ, можно использовать ваш плагин? Вышлите пожалуйста!
Конечно можно. Отправил на почту.
Большое спасибо за модуль, вот только я не подумал, он же для 9.7? А на ДЛЕ 10 ставится и как?
поставил на дле 10, не по инструкции, правда одна проблемка, если на странице еще есть блок custom, то на внутренних страницах перестает работать limit, выводятся все новости до последней.
Лимит не будет работать если не внесли изменения в файл \engine\modules\functions.php
Я видимо не корректно указал где нужно изменить.
Вот исправляю:
2. custom_page_navi.api.php в папку с модулями \engine\modules
Открыть файл
\engine\modules\functions.php
———НАЙТИ
[php]
$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name, comm_num, allow_comm,
allow_rate, fixed, rating, vote_num, news_read, votes, flag, editdate, editor, reason, view_edit, tags FROM " . PREFIX . "_post
WHERE " . $stop_list . $where_category . " AND approve" . $where_date . " ORDER BY " . $fixed . $news_sort . " " . $news_msort .
" LIMIT " . $custom_from . "," . $custom_limit;
[/php]
———ВЫШЕ ДОБАВИТЬ
[php]
if ($a_run=’main.tpl’){ $_SESSION[‘a_run’] =’function.php’; };
include_once ‘custom_page_navi.php’;
[/php]
К сожалению он потерял актуальность. В 10-й версии уже данный функционал введен, на сколько я знаю.
В 10-й да, можно выбрать чем выводить новости на главной {content} или {custom}, но пагинация в случае кастом все равно отсутствует, поэтому по-любому ваш модуль рулит. и еще, в дле 10 в \engine\modules\functions.php нет
$sql_select = «SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name, comm_num, allow_comm,
allow_rate, fixed, rating, vote_num, news_read, votes, flag, editdate, editor, reason, view_edit, tags FROM » . PREFIX . «_post
WHERE » . $stop_list . $where_category . » AND approve» . $where_date . » ORDER BY » . $fixed . $news_sort . » » . $news_msort .
» LIMIT » . $custom_from . «,» . $custom_limit;
Может посмотрите fuctions.php в дле 10? Был бы признателен. А пока вставил строки ориентировочно выше 647-й строки в functions.php, выше
$sql_select .= » WHERE «.implode(‘ AND ‘, $where).» ORDER BY » . $fixed . $news_sort . » » . $news_msort . » LIMIT » . $custom_from . «,» . $custom_limit;
Думаю надо все таки доработать под 10-ку. Много желающих его использовать.
Здравствуйте, отличный плагин! Пришлите мне пожалуйста на почту. Буду очень Вам благодарен
Отправил Вам на почту.
Принимайте.
Добрый день, хочу попробовать ваш модуль у меня много кастомов, а пагинатион нужен для одного
Отправил.
Здравствуйте! Можно получить модуль на е-майл? заранее спасибо.
Отправил Вам на почту _www.r_shrek@mail.ru
Добрый день!
Не момгли бы Вы скинуть этот скрипт мне бесплатно, я начинающий вебмастер можно так сказать, но больше музыкант. Делаю мини музыкальный портал, где вывод новостей хочу сделать через {custom} и необходима пагинация, очень. Прошу Вас, буду очень благодарен! Мой емейл: jumps1@yandex.ru
Отправил. Если будут вопросы пишите на почту или сюда.
Здравствуйте! Как можно получить этот плагин? Спасибо
Напишите почту. Я Вам отправлю.
Добрый день. Хочу испробовать Ваш плагин. Вышлите пожалуйста
Отправил Вам на почту.
Ну и нафиг он нужен, если можно вывести и так все, просто использовать шаблон, который у вас для custom, использовать его для категории!
Используйте. Вам ни кто не запрещает.
Хочу приобрести. Как выйти с вами на связь?
Почта: Admin@serovweb.ru
Icq: 7433365