Перенаправить компонент входа в систему .htaccess Joomla -> Community Builder - PullRequest
2 голосов
/ 18 ноября 2011

Я создаю веб-сайт с Joomla и Community Builder.

Мне нужна помощь с перенаправлением на определенную страницу, когда пользователь не вошел в систему!

После нажатия ссылки на модуль вне Joomla:

index.php?option=com_jevents&task=icalrepeat.detail&evid=16&Itemid=490&year=2011&month=11&day=17&title=personalefest-jysk&uid=3f380241e99b5db330b8e05f8920340a&login=1

Joomla перенаправляет на это:index.php/component/users/?view=login

Куда я действительно хочу перейти: /index.php/component/comprofiler/login (это представление входа в систему CB-компонента)

Здесь они проходят через некоторые интересные вещи
Выпускперенаправление из модуля Joomla
и здесь
RewriteRule для перенаправления с URL-адресом, который получил параметры

Но я не могу полностью понять, как я делаю правоменяется.

1 Ответ

1 голос
/ 15 февраля 2012

Первая ссылка, которую вы указали, содержит ответ:

Вы создаете публичную статью, которую вы можете назвать dispatcher.php, и она будет иметь следующий код:

<?php
$user =& JFactory::getUser();
    include_once JPATH_COMPONENT . DIRECTORY_SEPARATOR . "controller.php"; // assuming com_content

if (!$user->id) { //user is not logged in
    $contentController = new ContentController();
    $link = JRoute::_("/index.php/component/comprofiler/login");
    $contentController->setRedirect($link);
    return;
} else { //the user is logged in
    $contentController = new ContentController();
    $link = JRoute::_("/index.php?option=com_jevents&task=icalrepeat.detail&evid=16&Itemid=490&year=2011&month=11&day=17&title=personalefest-jysk&uid=3f380241e99b5db330b8e05f8920340a&login=1");
    $contentController->setRedirect($link);
    return;
}
?>

Вместо предоставления ссылки на вашу статью - вы предоставляете ссылку на dispatcher.php, который будет «решать», куда перенаправить пользователя (на вашу страницу - если пользователь вошел в систему - иначе на другую страницу входа)

Возможно, вам придется его отладить, так как у меня нет времени на его тестирование. Удачи!

...