Страница расширения вместо главной страницы

Проблемы с установкой или работой phpBB 3.1.x? Получите помощь здесь!
С 1 июля 2018 года phpBB Group прекращает поддержку phpBB версии 3.1.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.1 до 1 января 2019 года.
Подробнее: Окончание поддержки phpBB 3.1.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Michel
phpBB 2.0.4
Сообщения: 401
Стаж: 13 лет 3 месяца
Откуда: Липецк
Благодарил (а): 111 раз
Поблагодарили: 47 раз

Страница расширения вместо главной страницы

Сообщение Michel »

В общем проблема не новая. Но меня она сильно задевает. Как поставить страничку расширения на главную, вместо индекса? Например с расширением портала получилось добавив в файл .htaccess надпись DirectoryIndex app.php. А вот с другими расширениями это не проходит. Например расширение Директорий или Галереи. Если прописываешь как папку, то получаешь ошибку - так как получается этой папки не существует :(
В общем изощрялся как только возможно, но ничего не получается. Гуру помогите! Писал в темах с расширениями, но вразумительного ответа так и не получил.
Anvar
Former team member
Сообщения: 1965
Стаж: 15 лет 1 месяц
Благодарил (а): 57 раз
Поблагодарили: 622 раза

Re: Страница расширения вместо главной страницы

Сообщение Anvar »

Способ который используется в портале.

Открываем ext\board3\portal\config\routing.yml
Находим

Код: Выделить всё

# Redirect to portal by default
board3_portal_redirect_controller:
    pattern: /
    defaults: { _controller: board3.portal.main:handle }
Вырезаем и добавляем в нужное расширение по аналогии.

Важно заменить только эту часть board3.portal.main:handle
на используемый в расширении контроллер, не имеющий статических значений в пути.

Пример в галереи:

Код: Выделить всё

phpbbgallery_index:
    pattern: /gallery
    defaults: { _controller: phpbbgallery.core.controller.index:base }
Берём эту часть { _controller: phpbbgallery.core.controller.index:base } , так как pattern: /gallery имеет прямой путь.

Полный вариант для phpBB Gallery
Открываем ext\phpbbgallery\core\config\routing.yml
Добавляем

Код: Выделить всё

##################################
# Redirect to Gallery by default #
##################################
phpbbgallery_redirect_index:
    pattern: /
    defaults: { _controller: phpbbgallery.core.controller.index:base }
Url со статическими данными.
Например:

Код: Выделить всё

phpbbgallery_personal_page:
    pattern: /gallery/users/{page}
    defaults: { _controller: phpbbgallery.core.controller.index:personal }
Так как путь статический pattern: /gallery/users/{page} {page} - может быть любым, его нужно определить заранее.

Пример для таких ситуаций (page: 1 заменить на id персонального альбома):

Код: Выделить всё

phpbbgallery_redirect_page:
    pattern: /
    defaults: { _controller: phpbbgallery.core.controller.index:personal , page: 1}
Названия контроллеров board3_portal_redirect_controller: может быть любым, но главное что бы оно не повторялось. Выше в галереи я названия поменял на phpbbgallery_redirect_index: и phpbbgallery_redirect_page:
Аватара пользователя
Michel
phpBB 2.0.4
Сообщения: 401
Стаж: 13 лет 3 месяца
Откуда: Липецк
Благодарил (а): 111 раз
Поблагодарили: 47 раз

Re: Страница расширения вместо главной страницы

Сообщение Michel »

Anvar писал(а): Важно заменить только эту часть board3.portal.main:handle
на используемый в расширении контроллер, не имеющий статических значений в пути.
Вопрос! Где посмотреть какой используется в расширении контроллер?
И как я понял потом страничка с расширением должна открываться по адресу http://mysite.ru/app.php ???
Anvar
Former team member
Сообщения: 1965
Стаж: 15 лет 1 месяц
Благодарил (а): 57 раз
Поблагодарили: 622 раза

Re: Страница расширения вместо главной страницы

Сообщение Anvar »

Посмотреть и добавить код по пути ext\вендор автора
\расширене\config\routing.yml

Да app.php продублирует нужную страницу и уже его можнo будет сделать главной в .htaccess

Хотя можно сделать проще и правильнее, просто стереть путь и оставить только слэш в pattern: или в path:
Аватара пользователя
Michel
phpBB 2.0.4
Сообщения: 401
Стаж: 13 лет 3 месяца
Откуда: Липецк
Благодарил (а): 111 раз
Поблагодарили: 47 раз

Re: Страница расширения вместо главной страницы

Сообщение Michel »

Всё получилось. Респект тебе! Большущее спасибо!!!

Вернуться в «Поддержка phpBB 3.1.x»