Хак Вывод постраничной навигации отдельным тегом {navigation}

yura

Гуру форума
Регистрация
5 Апр 2006
Сообщения
455
Реакции
66
Из-за специфической верстки шаблона возникла необходимость вывести постраничную навигацию в разделах не там где ее выведет ДЛЕ, а там где нужно мне. Прокопавшись пару вечеров в нете на одном из сайтов (на каком увы не помню) нашел работающий вариант, который и выкладываю тут. Может кому-то тоже пригодится. Но есть у этого хака и проблемма, но о ней позже. Сначала сам хак!


Открыть файл engine/modules/show.short.php
В самом низу найти и удалить код:
Код:
  switch ( $config['news_navigation'] ) {

  case "2" :
  
  $tpl->result['content'] = $tpl->result['navi'].$tpl->result['content'];
  break;

  case "3" :
  
  $tpl->result['content'] = $tpl->result['navi'].$tpl->result['content'].$tpl->result['navi'];
  break;

  default :
  $tpl->result['content'] .= $tpl->result['navi'];
  break;
  
  }

Открыть index.php
Найти строку:
Код:
$tpl->load_template ( 'main.tpl' );

После нее вставить:
Код:
$tpl->set ( '{navigation}', $tpl->result['navi'] );

В main.tpl использовать тег {navigation}


Написанное было для актуальных в то время ДЛЕ 9.х. Работает все и на последнем 10.6, только вместо index.php правим по-моему engine/modules/main.php

НО! Есть и проблема... Все работает только когда кеширование ДЛЕ отключено. Если оно включено - навигация появляется 1 раз, после перезагрузки этой страницы ее больше нет пока вы не очистите кеш на главной админки. Тогда навигация снова выведется 1 раз... Как побороть???
 

killoff

CD тихо, и не DVD меня ;)
Команда форума
Модератор
Регистрация
13 Май 2008
Сообщения
2.563
Реакции
1.052
НО! Есть и проблема... Все работает только когда кеширование ДЛЕ отключено.
Этот код точно так же работал и на старых версиях 9х, так что тут ничего не поделаешь... Либо настраивать вывод пагинации в CSS ;)
 

yura

Гуру форума
Регистрация
5 Апр 2006
Сообщения
455
Реакции
66
Да ничего не настроишь-то... Чтобы навигация выводилась корректно в адаптивном шаблоне нужно перед ней закрыть пару дивов ибо clear:both не дает нужного результата. Проблемы вылазят в разделах где новостей меньше, чем нужно для разделения на страницы.

Я так понимаю, что нужны правки еще кода, который отвечает за кеширование...
 

yura

Гуру форума
Регистрация
5 Апр 2006
Сообщения
455
Реакции
66
Еще вылезла проблема с разбиением на страницы новостей с одним и тем же тегом - и дублируется, и может в разных видах выводиться.. Странно вобщем

Может у кого-то появился нормальный вариант как вывести постраничную навигацию отдельным тегом?

В современных шаблонах реально неудобно, что ДЛЕ тулит постраничку сразу вслед за последней новостью в разделе...
 
Последнее редактирование модератором:

killoff

CD тихо, и не DVD меня ;)
Команда форума
Модератор
Регистрация
13 Май 2008
Сообщения
2.563
Реакции
1.052
В ДЛЕ можно вывести его и сверху контента или и сверху и снизу! В настройках вывода новостей настраивается этот момент.
2018-06-11_10-39-27.png
 
Сверху