Что нового

ЧПУ без ID новостей DLE (1 Viewer)

  • Автор темы kablamer
  • Дата начала
K

kablamer

Участник
OLD SkripTers
Регистрация
18 Дек 2019
Сообщения
31
Реакции
168
1633738205978

Плагин добавляет 4-й тип ЧПУ без id новостей с рабочей функцией обработки неверных URL ЧПУ для более корректной работы по части СЕО. Тип ЧПУ настраивается также из админ-панели, необходимо выбрать тип 4:

Тип 4 - ссылки на полную новость будут иметь вид http://site.ru/категория/подкатегория/имя новости.html


Обращаю внимание, что данный плагин требует уникальности имён всех статей, чтобы поле alt_name не дублировалось!

1. Распаковать архив и установить плагин
2. Открыть файл .htaccess в корне, найти:

Apache-конфиг:
RewriteRule ^([^/]+).html$ index.php?do=static&page=$1&seourl=$1 [L]

Вставить ниже:

Apache-конфиг:
# SEO TYPE 4 START
RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+),(.*).html$ index.php?post=$4&news_page=$2&cstart=$3&seourl=$5&seocat=$1 [L]
RewriteRule ^([^.]+)/page,([0-9]+),(.*).html$ index.php?post=$3&news_page=$2&seourl=$4&seocat=$1 [L]
RewriteRule ^([^.]+)/print:page,([0-9]+),(.*).html$ index.php?mod=print&news_page=$2&post=$3&seourl=$4&seocat=$1 [L]
RewriteRule ^([^.]+)/-(.*).html$ index.php?post=$2&seourl=$3&seocat=$1 [L]

RewriteRule ^page,([0-9]+),([0-9]+),(.*).html$ index.php?post=$3&news_page=$1&cstart=$2&seourl=$4 [L]
RewriteRule ^page,([0-9]+),(.*).html$ index.php?post=$2&news_page=$1&seourl=$3 [L]
RewriteRule ^print:page,([0-9]+),(.*).html$ index.php?mod=print&news_page=$1&post=$2&seourl=$3 [L]
RewriteRule ^(.*).html$ index.php?post=$1&seourl=$2 [L]
# SEO TYPE 4 END


Продажник: Тут

Скачать:
 
Последнее редактирование модератором:
Для кодов используйте редактор. Так будет куда удобней читать инструкции. А также это сохранит формат самого кода
 

Вложения

  • Screenshot_20211009_180357.jpg
    Screenshot_20211009_180357.jpg
    374.7 КБ · Просмотры: 37
Обращаю внимание, что данный плагин требует уникальности имён всех статей, чтобы поле alt_name не дублировалось!
А что если имена статей будут неуникальны? будет ошибку выдавать или просто выводить первую статью из базы с одинаковым названием?
 
А что если имена статей будут неуникальны? будет ошибку выдавать или просто выводить первую статью из базы с одинаковым названием?
Будет отдавать ошибку запроса
 
Очень понравилось так сделать у себя, протестировал на 15.2

В ситемап ссылки виде https://skripters.biz/https://skripters.biz/forum/threads/50972/

Остальное всё в порядке вроде.

p.s. Действиях в файле engine/classes/google.class.php

PHP:
if( $config['seo_type'] == 1 OR  $config['seo_type'] == 2 OR  $config['seo_type'] == 3 ) {
                    
                    if( $row['category'] and $config['seo_type'] == 2 ) {
                        
                        $cats_url = get_url( $row['category'] );
                        
                        if($cats_url) {
                            
                            $loc = $this->home . $cats_url . "/" . $row['id'] . "-" . $row['alt_name'] . ".html";
                            
                        } else $loc = $this->home . $row['id'] . "-" . $row['alt_name'] . ".html";
                    
                    } else {
                        
                        $loc = $this->home . $row['id'] . "-" . $row['alt_name'] . ".html";
                    
                    }
 
                      if( $row['category'] and $config['seo_type'] == 3 ) {
                        
                        $cats_url = get_url( $row['category'] );
                        
                        if($cats_url) {
                            
                            $loc = $this->home . $cats_url . "/" . $row['alt_name'] . ".html";
                            
                        } else $loc = $this->home . "/" . $row['alt_name'] . ".html";
                    
                    }
                
                } else {
                    
                    $loc = $this->home . date( 'Y/m/d/', $row['date'] ) . $row['alt_name'] . ".html";
                }

наверное лишние home . или я ошибаюсь?
 
да, лишнее.
 
Кто подскажет, что именно надо поменять, чтобы сделать такой вид url http://site.ru/имя новости.html
 
А надо ли так вообще делать? Это повысит нагрузку на БД. Скрипту проще найти нужную цифру(id) чем делать сравнение строк (alt_name).
А главное, польза то от такого URL какая? Разве что чисто эстетическая...
 
А надо ли так вообще делать? Это повысит нагрузку на БД. Скрипту проще найти нужную цифру(id) чем делать сравнение строк (alt_name).
А главное, польза то от такого URL какая? Разве что чисто эстетическая...
с чего бы? разницы нет по какому ключу искать
16680130222231668013062299

единственное, alt_name - не уникальный ключ. поэтому для этого нужно сделать новый обработчик. и это единственный казус.
 
Понял, был уверен в обратном. Буду знать. Спасибо!
 
В урле не может быть пробелов.
У нас есть плагин такого. Хоть они и заполняют названия с пробелами, по итогу адрес будет с "-" в место пробела.

То что человек тут выложил этот плагин - это лишь старая версия одного из двух плагинов которые делались под наш проект, после эти плагины Чеклер продавал у себя на dleplugin.. Хоть это и старая версия плагина, но по сути рабочая.
 
У нас есть плагин такого.
Зачем говорить А, и не говорить Б? Если есть чем поделиться - в чем проблема? Если нет - то лучше промолчать иногда, т.к. никому не интересно что у кого-то есть.
 
Зачем говорить А, и не говорить Б? Если есть чем поделиться - в чем проблема? Если нет - то лучше промолчать иногда, т.к. никому не интересно что у кого-то есть.
А ты не думал что даже этот плагин что тут - не является бесплатным. Он платный и его тупо слили. А делиться доработанным тем более не кто не будет. По крайне мере я не буду. Может и найдется очередной человек, кто и сольет (осуждаю).
Прежде чем говорить б - подумай 10 раз.
Если тебе не интересна информация что тут далеко не последняя версия данного плагина - то просто промолчи и выйти с темы.
 
Последнее редактирование:
Прежде чем говорить б - подумай 10 раз.
Если тебе не интересна информация что тут далеко не последняя версия данного плагина - то просто промолчи и выйти с темы.
Плагин рабочий - да! Есть доработка его - вообще не важно, кому нужно будет пользоваться тем что есть, кому нужны свои хотелки - всегда закажет себе свой модуль в одни руки, и не будет говорить об этом "на лево и на право", т.к. это никому не интересно что у кого-то что-то есть, но кроме слов - по факту нет ничего! Одно балабольство. Либо если есть что сказать - подтверждай это действием каким-либо.
 
Установил. Id пропали. Вместе с ними пропали и сами детальки новостей(((
 
В версий DLE 16.0 работает без проблем, также работают ID новости
 
а у меня чет ошибок много на 15.2 версии
 

Пользователи, просматривающие данную тему

Верх