Хак Короткая ссылка на новости upd v0.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'];
Автор:dj-avtosh
Версия DLE:13 - 14.1
Контакты:telegram: @blob42
news-new-link-type0181.zip
[1.13 Kb] (cкачиваний: 165)