Изначально я написал это для категории «Баги»…
… но не останавливайте меня, если кто-то считает, что это заслуживает PR или коммита ![]()
Последние два месяца я довольно глубоко изучал каноническую структуру Discourse, и в целом она отличная.
Странные URL-адреса с параметрами вроде no_definitions=true или /search?q= возвращают правильный канонический URL.
Всё это работает при обслуживании JS-версии сайта как для пользователей, так и для поисковых роботов.
Однако, похоже, URL-адреса вида /u/* были упущены из виду — у них есть канонические ссылки, но они ведут на адреса, из-за которых Google индексирует тысячи лишних URL.
Задача:
Я хочу, чтобы все URL-адреса после имени пользователя указывали канонически на основную страницу профиля пользователя.
Таким образом, /u/FlyNumber — это основная страница профиля.
Следующие URL должны иметь каноническую ссылку на него (вместо того, что происходит сейчас, когда каноническая ссылка указывает на сам себя):
/u/FlyNumber/summary
/u/FlyNumber/activity
/u/FlyNumber/activity/topics
/u/FlyNumber/activity/replies
/u/FlyNumber/activity/likes-given
/u/FlyNumber/badges