Поправьте меня, если я что-то забыл указать (надеюсь на это!), в противном случае в движке есть некоторые недоработки в роутинге, и нужно открывать новый тикет на гитхабе. Поехали.
Переименование blogs в community
Это наименее проблемная часть.В конфиге указываем:
$config['router']['page']['blogs'] = 'ActionError';
$config['router']['page']['community'] = 'ActionBlogs';
В результате:
ссылки формируются правильно (/community)
мета-теги hreflang в коде формируются правильно:
<link rel="alternate" hreflang="x-default" href="http://sitename.com/community/">
<link rel="alternate" hreflang="ru" href="http://sitename.com/ru/community/">
<link rel="alternate" hreflang="en" href="http://sitename.com/en/community/">
Адрес вида sitename.com/blogs/ не открывается, как и положено
НО мета-тег canonical формируется неправильно!
<link rel="canonical" href="http://sitename.com/blogs/?order=blog_rating&order_way=desc"/>
Переименование blog в id
Эта часть сложнее.В конфиге прописываем
$config['router']['page']['id'] = 'ActionBlog';
В результате:
Ссылки на блог формируются правильно (/id/xxx)
Мета-тег canonical для страницы блога формируется правильно
Мета-теги hreflang для страницы блога формируются правильно
НО блог также открывается и по ссылке sitename.com/blog/xxx
Поскольку ActionBlog отвечает еще и за вывод содержимого топика, перейдем к странице топика:
Ссылки на топик формируются правильно — в зависимости от заданного в настройках сайта (/t/%topic_id%)
Мета-тег canonical формируется правильно
НО Мета-теги hreflang формируются неправильно:
<link rel="alternate" hreflang="x-default" href="http://sitename.com/blog/%topic_id%.html/">
<link rel="alternate" hreflang="ru" href="http://sitename.com/ru/blog/%topic_id%.html/">
<link rel="alternate" hreflang="en" href="http://sitename.com/en/blog/%topic_id%.html/">
Пробуем в конфиг добавить следующее, чтобы не открывались ссылки /blog/, не было дубликатов и каких-либо упоминаний о блоге в ссылках:
$config['router']['page']['blog'] = 'ActionError';
НО после этого перестают показываться топики по заданным в настройках сайта параметрам url.
Соответственно, вопрос. Это я что-то упустил или стоит открыть тикет на гитхабе о баге в роутинге движка?
Но честно признаюсь, не проверял, какие при этом формируются мета-теги, проверю
в итоге ссылки формируются на сайте в виде /blogs, и они не открываются — ошибка 404.
site.com/blogs -> ActionBlogs
А сейчас вы хотите другой URL перенаправить на тот же обработчик:
site.com/community -> site.com/blogs -> ActionBlogs
Вот и надо в конфиге прописать, чтобы запрос community отправлялся туда же, куда обычно отправляется запрос blogs.
Сравните мой код и Ваш, и поймите разницу. Если Вы хоть когда-нибудь писали правила для .htaccess, то все должно быть очевидным