Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как вместо %20 в адресной строке подставлять символ + между словами ???

Как вместо %20 в адресной строке подставлять символ + между словами ???


     17.08.2024    Все вопросы » Общие вопросы    224

вопрос
Добрый день.

Скажите что нужно прописать в файле .htaccess чтобы в адресной строке подставлялся + вместо пробела %20

Вместо этого test1.ru/company/Централ%20Партнершип/

Надо так test1.ru/company/Централ+Партнершип/

Пример ссылки в fullstory.tpl
<a href="/company/[xfvalue_company]/">[xfvalue_company]</a>


Если в админке в доп поле установить "использовать значения полей как перекрестные гиперссылки" тогда
на сайте выводится как надо. А если в доп поле не ставить эту галочку тогда на сайте будет этот %20 в адресе

Ответа пока нет


9 комментариев

derebas
Юзер

derebas - 18 августа 2024 00:48 -

А как вы выходите сами ссылки если убираете "галочку"? Тегами?

Kentavr
Юзер

Kentavr - 18 августа 2024 04:55 -

<a href="/company/[xfvalue_company]/">[xfvalue_company]</a>

Kentavr
Юзер

Kentavr - 18 августа 2024 05:01 -

Хотелось бы строку для файла .htaccess если это возможно, либо js код для файла fullstory.tpl

derebas
Юзер

derebas - 18 августа 2024 12:28 -

RewriteCond %{THE_REQUEST} \s([^\s]+)\s
RewriteRule %20 /$1 [N]
RewriteCond %{REQUEST_URI} ^(.*)\s(.*)$
RewriteRule ^ %1+%2 [N]
RewriteRule ^(.*)\s(.*)$ $1+$2 [R=301,L]

Kentavr
Юзер

Kentavr - 18 августа 2024 14:28 -

Спасибо но по прежнему в адресной строке между словами есть %20 а мне нужно + между словами
Есть ручками заменить %20 на + то новость открывается.

derebas
Юзер

derebas - 18 августа 2024 15:43 -

Попробуйте так
RewriteEngine On
RewriteCond %{REQUEST_URI} %20
RewriteRule (.*)%20(.*) $1+$2 [N]
RewriteRule (.*) $1 [R=301,L]

Kentavr
Юзер

Kentavr - 18 августа 2024 15:58 -

Так сайт не работает вообще. Браузер выдает такое

Страница недоступна Сайт ... выполнил переадресацию слишком много раз.
Попробуйте удалить файлы cookie.

ERR_TOO_MANY_REDIRECTS

Куки чистил не помогает

derebas
Юзер

derebas - 18 августа 2024 16:51 -

К черту htaccess давайте проще

к href добавьте id="xfield_value"
<a href="/company/[xfvalue_company]/" id="xfield_value">[xfvalue_company]</a>

И добавьте скрипт обработчик
<script>
document.addEventListener('DOMContentLoaded', function() {
    const links = document.querySelectorAll('a#xfield_value');

    links.forEach(link => {
      let href = link.getAttribute('href');

      if (href) {
        href = href.replace(/ /g, '+');
        link.setAttribute('href', href);
      }
    });
  });
</script>

Kentavr
Юзер

Kentavr - 21 августа 2024 21:21 -

Спасибо огромное. Этот вариант самый простой и рабочий!

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх