Безлимитный хостинг на сверхбыстрых SSD-дисках от 57р в месяц   •   Реклама
4 269 просм
14 комм
Поделиться:

Как убрать .html в конце адреса статистических страниц в DLE?

14 мар
Хаки

Как мы знаем, в DataLife Engine имеется 2 типа страниц – страницы материалов и статистические страницы. Различие между первым и вторым типом – это возможное наличие иерархии категорий и присутствие ID в адресе у страницы материала.

Поскольку со статистической страницей дела обстоят куда проще (они состоят всего лишь из названия страницы и .html на конце), то сейчас я покажу вам, как легко можно убрать конец .html.

1. Сначала необходимо подключиться к вашему сайту по FTP.

2. Далее, в папке сайта, найдите файл .htaccess и откройте его любым текстовым редактором. В нем строку:

RewriteRule ^([^.]+)/?$ index.php?do=cat&category=$1 [L]

замените на:

RewriteRule ^([^.]+)/$ index.php?do=cat&category=$1 [L]

Здесь же строки:

RewriteRule ^page,([0-9]+),([^/]+).html$ index.php?do=static&page=$2&news_page=$1&seourl=$2 [L]
RewriteRule ^print:([^/]+).html$ index.php?mod=print&do=static&page=$1&seourl=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+).html$ index.php?do=static&page=$1&seourl=$1 [L]

замените на:

RewriteRule ^page,([0-9]+),([^/]+)$ index.php?do=static&page=$2&news_page=$1&seourl=$2 [L]
RewriteRule ^print:([^/]+)$ index.php?mod=print&do=static&page=$1&seourl=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)$ index.php?do=static&page=$1&seourl=$1 [L]

Сохраните изменения и отправьте файл обратно на сайт.

3. Откройте файл static.php в папке /engine/inc/, найдите строку:

if( $config['allow_alt_url'] ) $vlink = $config['http_home_url'] . $row['name'] . ".html";

Замените ее на:

if($config["allow_alt_url"]) {

	$vlink = $config["http_home_url"].$row["name"];
	
}

4. Откройте файл google.class.php в папке /engine/classes/ и строку:

if( $this->allow_url ) $loc = $this->home . $row['name'] . ".html";

Замените ее на:

if($this->allow_url) {

	$loc = $this->home.$row["name"];
	
}

По завершении всех шагов обновите на сайте кэш, а также карту сайта (раздел «Другие разделы», пункт «Карта сайта для Google и Yandex»).

14
комментариев
Форма комментирования этой статьи скрыта. Авторизуйтесь, чтобы расширить привилегии гостевого посещения и получить необходимую помощь от сообщества Pandoge.
    • 1
    1
      •  Пользователь
    20 мар в 15:38

    Автор! Огромное спасибо! На версии DLE 13.2 работает отлично!

    • 0
    1
      •  Пользователь
    5 янв в 00:39

    Hi, this trick dle doesn't work at 13.3. Can you help? I did everything right

      • 0
      803
        •  Администратор
      7 янв в 04:29

      Mehmet Gun, Hello!

      I'm sorry for the late reply. Checked - everything works without problems, at least at 13.2.

      So I recommend repeating everything again carefully.

    • 0
    803
      •  Администратор
    22 июн в 15:23

    vG, навскидку - не как. Потому что / - это признак категорий. Можно конечно на PHP попробовать решить эту задачу, но без доступов не смогу помочь.

    • 0
    1
      •  Пользователь
    22 июн в 00:46

    А как сделать чтобы в конце была ссылка / ?

    Если мы заменяем .html везде на /

    То не работает.

    Если удаляем

    RewriteRule ^([^.]+)/$ index.php?do=cat&category=$1 [L]

    То работает.

    Но тогда не работают категории. Как можно это решить ?

    • 0
    803
      •  Администратор
    11 мая в 01:40

    Илья, можно пару примеров ссылок? Посмотрю что к чему.

    • 0
    766
      •  Гости
    10 мая в 20:01

    На последней версии DLE тоже самое проделал, работает но с точкой на конце.. как исправить подскажите чтобы ровно работало? =)

    • 0
    766
      •  Гости
    25 мар в 13:45

    Вот как избавиться вообще от html ссылки и оставить только типа: http://site.ru/категория/01 (где цифры в конце - это ID новости) ?

    • 11
    803
      •  Администратор
    7 фев в 17:21

    Андрей, а так, не делая глобальных изменений, редирект можно сделать через htaccess:

    RewriteRule ^about_us$ index.php?do=static&page=about_us[L]

    Вставлять лучше сразу после RewriteEngine On.

    about_us - адрес статистической страницы.

    • 11
    803
      •  Администратор
    7 фев в 17:18

    Андрей, напишите через группу в ВК ваш сайт и доступы к нему, посмотрим, что там у Вас не работает.

    • 8
    803
      •  Администратор
    7 фев в 17:13

    Андрей, "скопировал откуда-то молодец" - я бы на Вашем месте подумал, прежде чем писать здесь всякую чушь.

    Этот способ придуман лично мной, проверен на версии 10.6 - и на нем проблем не обнаружено.

    • -1
    766
      •  Гости
    7 фев в 14:36

    У меня DLE 11.2 не работает да и не может оно работать, обработчик определяет её как категорию и пишет что нет страницы, скопировал откуда-то молодец, проверь хоть на работоспособность, потом утверждай.

    • 6
    803
      •  Администратор
    6 фев в 21:00

    Андрей, скрипт рабочий на 100% и он подходит только для статистический страниц движка.

    • 0
    766
      •  Гости
    6 фев в 16:02

    Только вот не работает это) после всех этих действий страница грузится только с точкой на конце

Подняться наверх
«Pandoge» - помощник вебмастера