Ещё один вопрос о постоянных ссылках — использование регулярного выражения

Привет,

Всякий раз, когда я ищу в Google темы, которые были на старом сообществе, но были перенесены, Google возвращает что-то вроде

Конечно, все эти ссылки ведут на ошибку 404, потому что путь Welcome to the new Exalate community - Site Feedback - Exalate не существует.

Есть ли способ добавить регулярное выражение к постоянным ссылкам, чтобы при поиске

https://community.exalate.com/questions/20123204/stop-syncing

запрос автоматически перенаправлялся на тему или страницу вики, объясняющую ситуацию?

Я думаю, что лучший способ сделать это — использовать нормализацию постоянных ссылок

(т. е. удалять всё после /questions, а затем добавлять постоянную ссылку для этого пути)

Вы импортировали /20123204/stop-syncing? Если да, и вы сделали это с помощью чего-то, что использовало базовый скрипт импорта base.rb, то вы должны быть в состоянии направить их в нужное место.

Непонятно, что такое import base.rb.

Все эти темы были импортированы с помощью API.
Можете дать подсказку, где найти подробности?

Спасибо!

Ах, значит у вас нет import_id. Это ещё одна причина, почему импорт через API — плохая идея.

Вам нужно будет создать постоянные ссылки (администрирование /настройка/постоянные ссылки) для импортированных постов. Но вы можете использовать одну постоянную ссылку-перенаправление, чтобы перехватить их все и направить в одно место.

Привет,

Я добавил

‘questions’, указывающий на тему, но это не решило проблему.

Честно говоря, описание «нормализации пермалинков» превышает мои интеллектуальные возможности для понимания :sweat:, так что, вероятно, я упускаю суть.

Что мне нужно ввести в интерфейс пермалинков, чтобы любой запрос к …/questions/… сопоставлялся с одной темой?

Ладно, наши сообщения пересеклись.
В чём секрет того, чтобы это заработало?

Что-то вроде

/question\/.*/ваш-url

Привет, Francis :wave: Я перенёс это в личное сообщение с нашей службой поддержки. В будущем вы можете отправить ЛС напрямую команде team или написать на team@discourse.org для подобных запросов.

Похоже, что вы уже получили помощь от сообщества :slightly_smiling_face:, но если вам понадобится дополнительная информация или помощь, пожалуйста, дайте нам знать.

Хорошо, спасибо, что сообщили мне.

Привет, Yigit.

У меня пока нет решения.
Когда я использую questions/.* в качестве исходного URL, запросы к community.exalate.com/questions/blah не перенаправляются.

Есть ли что-то, что мне нужно учитывать?

Понятно. Спасибо, что сообщили нам, Фрэнсис.

Я попробовал несколько вариантов, но пока не смог получить ожидаемые результаты. Давайте я проконсультируюсь внутри команды, чтобы найти подходящий вариант. Как только у нас появится обновление, мы сразу же свяжемся с вами. :+1:

Лили также работает над этим делом …

···

Пн, 18 нояб. 2024 г., 16:57 Команда Discourse <team@discourse.org> написала:

Пожалуйста, напишите ваш ответ выше этой строки.

| Йыгит Мерсин Йыгит команда
18 ноября |

  • | - |

О, хорошо. Спасибо, что сообщили нам, Фрэнсис.

Я пробовал несколько комбинаций, но пока не смог получить ожидаемые результаты. Позвольте мне проконсультироваться внутри компании, чтобы найти подходящий вариант. Мы вернёмся к вам как можно скорее, как только у нас появятся обновления. :+1:


Ответьте на это письмо, чтобы ответить Команде Discourse (98).

Юридическое уведомление

Привет, Фрэнсис,

Нормализации — это расширенная функция, расположенная в другом месте. Я только знал о них, но сам ещё не использовал. Они находятся в настройках сайта, а не в интерфейсе постоянных ссылок.

Попробуйте следующее:

Я выполнил эту настройку на нашем демонстрационном сайте https://try.discourse.org, и она работает следующим образом:

○ → curl -i https://try.discourse.org/questions/do/you/wanna/build/a/snowman
HTTP/2 301 
…
x-discourse-route: permalinks/show
location: https://try.discourse.org/t/whoa-check-out-this-crazy-paper-artwork/77
…

Этот сайт будет сброшен ночью (как обычно), и всё это исчезнет, но на вашем сайте это должно выполнить необходимую задачу.

Решено.

Привет @pfaffman — сначала я не понял вашу подсказку, но скриншот от @supermathie пролил свет на ситуацию.

Спасибо всем за помощь.