DLE OpenCart Wordpress IP.Board XenForo PrestaShop UCOZ Joomla Cкрипты Программы Боты
Vibix - надеждый видео-балансир
VIPAdmin / CMS / Datalife Engine / Хаки DLE / Короткая ссылка на новости upd (0.18.1)

Короткая ссылка на новости upd (0.18.1)



Обновление: Добавлена поддержка DLE 14, 14.1
Легкий и быстрый плагин для изменения ссылок по всему сайту.

Для работы решения должен быть установлен тип SEO-ссылок: 1 или 2

Превращает по всему сайту ссылки:
site.ru/{cat}/text-{id}

в
site.ru/{id}


Способ установки:

1. Загрузить и установить плагин в админке (/admin.php?mod=plugins)
2. Прописать правила:

- Для apache2 (httpd) [файл .htaccess] (желательно выше всех правил):

RewriteRule ^([0-9]+)(/?)+$ index.php?newsid=$1 [L]


- Для nginx [conf-файл из /etc/nginx.conf]:
rewrite ^/([0-9]+)(/?)+$ /index.php?newsid=$1 last;


P.S.

Если вы хотите ссылку site.ru/123.html, тогда открываем плагин и
$newsPattern = "$1";
$newsCommentsPattern = "$3";


заменяем на
$newsPattern = "$1.html";
$newsCommentsPattern = "$3.html";


и переделываем правила apache2 или nginx

А так же (если вам нужна переадресация со старых адресов на новый, то должно в .htaccess работать такое):

Тип ЧПУ 1:
RewriteRule ^([0-9]+)-(.*).html$ /$1 [R=301,L]


Тип ЧПУ 2:
RewriteRule ^([^.]+)/([0-9]+)-(.*).html$ /$2 [R=301,L]


* можно добавить оба - будет работать.

* не меняются ссылки в BlockPro? есть решение:

engine/modules/base/core/base.php

все что с :
$url = ... 


меняем на:
$url = $this->dle_config['http_home_url'] . $data['id'];


Версия DLE:13 - 14.1
Enoot
644

Короткая ссылка на новости upd (0.18.1)

Сохранить или отправить
Кликните на изображение чтобы обновить код, если он неразборчив