![]() |
RealURL, домены, неуникальные алиасы страниц
На старом проекте под 3.8 (там я и познакомился с TYPO3) есть несколько доменов, на них однотипные сайты. Там есть такая проблема - ссылки на некоторые страницы выдаются неверные (генерится просто ссылка на главную стр.). Покопавшись, выяснили вот что.
Много букв, но если что, попробую рассказать ещё подробнее :) Дело в том, что у каждой страницы есть alias (поле alias в таблице pages), и при запросе адреса id=testalias он преобразуется по этому алиасу в UID, т.е. делается [SELECT uid FROM pages WHERE alias='testalias' AND NOT pages.deleted] парсером урлов. Для тех страниц, у которых алиас уникальный, всё хорошо, а для тех, у которых алиас есть в других доменах – нет, выдает UID другой страницы, а не той, которая реально должна быть, при этом этот полученный UID не попадает в дочки текущего родителя (поля pid, rootpage_id). Вариантов решения, на мой взгляд, два: 1) Придерживаться политики уникальных алиасов; 2) Каким-то образом заставить класс-парсер Real URL учитывать уникальность алиаса в пределах домена. Интересует возможность настройки RealURL по пункту 2, так как пункт 1, хоть и работает, не устраивает по идеологическим причинам - хотелось бы иметь как раз одинаковые алиасы для страниц в разных сайтах, но с одним и тем же предназначением :) Заранее благодарю за помощь! |
Перешёл на 4.1 и всплыл аналогичный вопрос, пошёл в поиск и нашёл эту тему. Кстати, решили её пунктом 1. Хотя это менее эффективно, чем 2 :(
А тут столкнулся с новостью - 4.1 отказывается работать с неуникальными алиасами вообще. Возможно, есть какая-то переменная конфига, отвечающая за это поведение, кто-то может подсказать? К слову, почему нужны неуникальные алиасы - для многосайтовости. То есть на разных сайтах одна и таже страница алиасится одинаково - так в теории. На практике может получиться облом. Вопрос2: Никто не пробовал неуникальные алиасы в купе с RealURL? Спасибо. |
Цитата:
То что Вы хотите реализовать делается с помошью поля "Speaking URL path segment". Значение поля может быть неуникальным, собственно для того и сделано. |
Огромное спасибо за помощь с Speaking URL path segment, пошёл читать.
В предудущей версии сайта на 3.8 именно "почти дало" даже без всяких почти, так как алиасы есть неуникальные. Поэтому я и подумал - есть какой-то TS ключик.... |
Многосайтовая установка, имена страниц- русские, ряд одинаковых - типа "о фирме", "схема проезда". Полет нормальный без дополнительных телодвижений. 4.0.4.
|
Имена страниц != alias
|
Цитата:
Но это означает только то, что одну из страниц вы просто теряете... так как алиас это "синоним" uid, только строчный |
Цитата:
Кстати, дока по realurl крайне старая, для 3.8.0, конфиг оттуда вызвал ругань TYPO3. Поправил, как сказала ругань, тем не менее, может быть можно подсказать доходчиво смысл "Speaking URL path segment" и правила его установки для нескольких идентичных сайтов. Как я понял, это поле доступно только для главных страниц (root). |
Цитата:
в wiki.typo3.org посмотрите пример конфигов |
для любой страницы
|
Speaking URL path segment - неуникальный (в рамках всей системы) алиас любой страницы. Должен быть уникальным в пределах одного предка в дереве страниц.
|
Дело в то, что у меня это поле есть в форме редактирования только для главной страницы :(
Равно как и "Navigation title" над ним, не знаю, относится ли он к RealURL Конфиг счас банальный, из примера, только поправил config.baseURL По поводу вики пока радости мало. http://wiki.typo3.org/index.php/Realurl - мало http://wiki.typo3.org/index.php/EXT/realurl/examples - я в шоке http://wiki.typo3.org/index.php/EXT/realurl/manual - читаю |
Это поле показывается только если тип страницы - Advanced.
Чтобы его увидеть у других страниц, нужно либо сменить их тип на advanced, либо прописать строку TS Config'a. |
Большое спасибо.
Понял про Advanced. А что за строка TS имеется в виду? Ещё не имел удовольствия с ней :) |
Помогите со строкой конфига, пожалуйста :)
|
Кажется, я ошибся со строкой..
Возможно я ошибаюсь, но кажется эту проблему можно решить только строкой в typo3conf/extTables.php: PHP код:
|
Да, TCA-тюнинг помог, спасибо!
Правда, поле не появляется для страниц типа Symlink. Можно это подкорректировать? :) |
Для шорткатов нужна чуть другая строка:
PHP код:
|
Всё понял, спасибо.
Всё-же примеры рулят :) |
Подскажите, пожалуйста, что-таки делает Speaking URL path segment?
Я задал его для страницы (megatest), но она как отображалась в ссылке алиасом (test), так и отображается. Кэш почистил. Всё понял, недоконфигурировал, ответ здесь: http://forum.typo3.biz/showpost.php?p=10627&postcount=3 Кипяток, кипяток! :) |
Можно ли заменить в форме заголовок "Speaking URL path segment" на русский текст? По-моему, офиц. перевода у этого плагина нет?
|
Часовой пояс GMT +4, время: 21:51. |
Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot