Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
студент

Как изменить чпу в IPB 4?

Рекомендованные сообщения

Все изменения описаны выше.

 

еще у меня в сообщениях присутствуют ссылки с pid к примеру

forum/index.php?/topic/5118/page__pid__98945__st__60#entry98945

которая как оказалось и на старом форуме (3.4.8) неправильно переходила

Правильно переходит. Pid этого сообщения из другой темы, поэтому редирект происходит на новую тему.

Поделиться сообщением


Ссылка на сообщение

Правильно переходит. Pid этого сообщения из другой темы, поэтому редирект происходит на новую тему.

При клике на эту ссылку forum/index.php?/topic/5118/page__pid__98945__st__60#entry98945 (правильно) переходит на первую страницу нужной темы, но через секунду происходит редирект и открывается страница на которой находилась сама ссылка. URL становиться такой: forum/topic/5890/#entry98945 и переход происходит на сообщение, которое нахожиться на 2 сообщения выше того сообщения в котором находится ссылка (по которой мы кликали).

так и в старой версии 3.4.8 также и в новой версии 4.1

Поделиться сообщением


Ссылка на сообщение

так и в старой версии 3.4.8 также и в новой версии 4.1

http://313news.net/forum2/index.php?/topic/5118/page__pid__98945__st__60#entry98945

 

Это сообщение было перемещено в другую тему и не относится к теме к которой прикреплена ссылка. Это не показатель работы, потому что ссылка изначально кривая.

Поделиться сообщением


Ссылка на сообщение

Тоже столкнулся с чпу...

в админке перешел на вид тем и топиков вот такой, как был раньше, до обновления:

forum/{#id}

topic/{#id}

ссылки с других сайтов работают.

но!

если в теме всего одна страница, то переход на последнее сообщение вида

/forum/topic/19413/?tab=comments#comment-214116 загружется нормально

а если несколько будет страниц, то получится ссылка с /page/xxx/ и уже будет too many redirects

/forum/topic/5413/page/2/?tab=comments#comment-214094

 

три дня уже бьюсь, на переходить на обычный вид ссылок и терять все старые ссылки очень не хочется.

Прошу помощи или подсказки)

Поделиться сообщением


Ссылка на сообщение

system/Http/Url/Friendly.php

				$def = static::getFurlDefinitionFromPath( $this->getFriendlyComponent() );

заменить на 

				$def = static::getFurlDefinitionFromPath( preg_replace( "/\/" . preg_quote( $param, '/' ) . "\/\d+?/", '', $this->getFriendlyComponent() ) );

 

  • Upvote 2

Поделиться сообщением


Ссылка на сообщение

Супер! Спасибо! Чем обязан?) Я столько мучился...

Поделиться сообщением


Ссылка на сообщение
22 часа назад, Icechieff сказал:

три дня уже бьюсь, на переходить на обычный вид ссылок и терять все старые ссылки очень не хочется.

Как вариант - на старые ссылки можно поставить редирект и ничего не потеряете.

  • Like 1

Поделиться сообщением


Ссылка на сообщение
07/05/20 12:28 (изменено)

в .htaccess?

сейчас вот заметил, что кто-то стучался в /forum/topic/5498/page-1 и получил отлуп

а вот если б вместо - был / сработало бы ... /forum/topic/5498/page/1 пытался сделать через

RewriteRule (.*)/page/([0-9]+)$ $1page/$2 [QSA]

что-то не работает, ищу еще варианты

Изменено пользователем Icechieff

Поделиться сообщением


Ссылка на сообщение

Еще актуально, перепробовал кучу вариантов, без толку...

Поделиться сообщением


Ссылка на сообщение

Так регулярка не совсем верно составлена. Вы ее написали под конечный результат.

RewriteRule ^(.*)/page-([0-9]+)$ /$1/page/$2 [R=301,L]

Добавить после RewriteEngine

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
07/06/20 20:33 (изменено)

Эффект есть) page-3 в page/3 переделывает)

но ссылка из нужной  /forum/topic/5498/page/1

превращается в /topic/5498/page/1

 

p.s. методом тыка пробовал

RewriteRule ^(.*)/(.*)/page-([0-9]+)$ /$1/page/$2 [R=301,L]
RewriteRule ^(.*)/page-([0-9]+)$ /$1/forum/page/$2 [R=301,L]

не прокатило

Изменено пользователем Icechieff

Поделиться сообщением


Ссылка на сообщение

может так?

RewriteRule ^(.*)/page-([0-9]+)$ /forum/$1/page/$2 [R=301,L]

Поделиться сообщением


Ссылка на сообщение

Попробуйте так. Ну вообще пример который я привел должен быть рабочим если его поместить в той же папке где находится форум

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...