Пагинация тега custom в полной новости

Пагинация тега custom в полной новости

В DLE не предусмотрена пагинация тега custom в полной новости. Этот хак помогает решить эту проблему. Он может пригодится в частности тем, кто делает подборки на сайте по схеме - Custom + категория + доп.поле = подборки и хочет сделать постраничную навигацию.


Установка:
1. Открыть engine/modules/show.full.php и найти (1е вхождение):
if( $config['allow_alt_url'] ) {

Добавить ниже:
if ( $cstart > 1 ) $_SERVER['REQUEST_URI'] = preg_replace( '#/page/.*#i', '.html', $_SERVER['REQUEST_URI'] );

Найти еще:
$tpl->set( '{full-link}', $full_link );

Добавить ниже:
$url_page = str_replace( '.html', '', $full_link );

2. Открыть engine/modules/show.custom.php и найти:
$tpl->compile( 'navi' );

Добавить ниже:
if( $dle_module == "showfull" ) $tpl->result['navi'] = str_replace( $url_page . '/"', $url_page . '.html"', $tpl->result['navi'] );

3. В корне сайта открыть .htaccess и найти:
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*).html$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4&seourl=$4 [L]

Добавить ниже:
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)/page/([0-9]+)(/?)+$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4&seourl=$4&cstart=$5 [L]

Найти еще:
RewriteRule ^([^.]+)/([0-9]+)-(.*).html$ index.php?newsid=$2&seourl=$3&seocat=$1 [L]

Добавить ниже:
RewriteRule ^([^.]+)/([0-9]+)-(.*)/page/([0-9]+)(/?)+$ index.php?newsid=$2&seourl=$3&seocat=$1&cstart=$4 [L]

Найти еще:
RewriteRule ^([0-9]+)-(.*).html$ index.php?newsid=$1&seourl=$2 [L]

Добавить ниже:
RewriteRule ^([0-9]+)-(.*)/page/([0-9]+)(/?)+$ index.php?newsid=$1&seourl=$2&cstart=$3 [L]

Готово!
 
Версия DLE: 13.1
Автор: iCooLER
Информация
Посетители, находящиеся в группе Гость, не могут оставлять комментарии к данной публикации.

Комментариев 1

bymerpro 3 ноября 2019 19:54
pensive юзал данный хак пока не обновился до 13.3. Уважаемый icooLER не хочет обновлять хак(((