Подсветка текущей темы документации в боковой панели по её слагам в индексе

Я пытаюсь определить элементы индекса оглавления, используя только слайги, а не добавляя индекс темы в конец URL-адреса — чтобы я мог поддерживать одинаковый индекс оглавления в разных средах (DEV/PROD).

Это, похоже, работает (так как навигация к нужной теме осуществляется только по слайгу), но текущая тема не подсвечивается в меню слева, если я также не добавлю ID в конец каждого URL-адреса. Есть ли какое-либо обходное решение?

2 лайка

О, это интересный вариант использования. Я понимаю идею использования только слайгов, но как вы будете обходить замену URL-адресов сайта?

Например, на продакшене:

# Индекс
- https://prod.discourse.site/t/one-slug

а на дев-окружении:

# Индекс
- https://dev.discourse.site/t/one-slug
1 лайк

Я использую относительные пути для URL (t/one-slug), и они, кажется, работают нормально?

Понял, значит, что-то вроде следующего:

## Настройка

* [Первоначальная настройка вашего устройства](/t/initial-setup-of-your-device)

Понял. Я работаю над обновлением для вашего запроса на слаг.

6 лайков

Спасибо, Натали! Очень признателен :slight_smile:

Я заметил, что для этого вышло обновление, поэтому попробовал его на своей системе, но, похоже, оно не работает. Извините, если процесс ещё не завершён :slight_smile:

К сведению — я нашел способ обновить индексы post-id для всех якорных ссылок на всех якорях в PROD с помощью Rails, так что у меня теперь есть обходное решение для этой проблемы.

Почему бы просто не восстановить базу данных продакшена на девелопмент, чтобы получить одинаковые ID? Должно быть что-то, чего я не понимаю.

Разве это не сотрет весь контент форума на PROD?

Нет. Это сотрёт весь контент форума на dev.

Похоже, я не понимаю, как именно вы используете DEV.

Извините — я неправильно понял ваше первое сообщение (перепутал DEV и PROD!).

Мы изначально создали индекс оглавления (и связанные темы) в среде DEV, поэтому хотели найти простой способ скопировать их в PROD. Теперь, когда всё работает в PROD, да, мы могли бы просто восстановить данные из PROD в DEV, чтобы синхронизировать их.

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

1 лайк