как установить сессию в Joomla

У меня есть веб-сайт в Joomla, который содержит поля курса.

Каждое поле курса имеет разные URL. Я должен проверить, что если пользователь вошел в систему, то он будет

перенаправить на этот курс. Если пользователь не вошел в систему, он будет перенаправлен на страницу входа.

проверить с помощью сессии.

Пожалуйста, помогите мне найти это

1

Решение

Вы должны добавить JFactory / GetUser функция для проверки, если пользователь вошел в систему и если не использовать JApplication :: редирект перенаправить его на нужный URL.

$user = JFactory::getUser();
$app = JFactory::getApplication();

if (!$user->guest) {
echo "You are logged in";
} else {
$login_url = "index.php?option=com_users&view=login";
$app->redirect($login_url,'message to display','message');
}

РЕДАКТИРОВАТЬ:

В Joomla есть встроенные методы для отображения контента только зарегистрированным пользователям без какого-либо кодирования.

Для статей:

Content -> Article Manager -> *Article_name -> Access: Registered

Для пунктов меню:

Menus -> *Menu_name -> *Menu_item_title -> Access: Registered

Существует также возможность установить ссылку для перенаправления после входа в систему.

Для страницы входа в пункт меню:

Menus -> *Menu_Name -> New -> Menu Item Type: (Users Manager -> Login Form) -> Options -> Login Redirect

Для модуля входа в систему:

Extensions -> Module Manager -> New -> Login -> Login Redirection Page

* Быстрый совет, если у вас нет кнопки входа в ваше меню, — это создать новое «скрытое» меню (которого не будет ни в одной позиции внешнего интерфейса) и поместить туда «URL перенаправления входа».

Удачи!

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]