[英]Redirect user to custom URL after successful registration in Joomla
我希望我的用戶在成功注冊 Joomla 后重定向到自定義 URL。 我找不到任何選擇! 我怎樣才能做到這一點?
在您的代碼集中執行以下操作;
$app=JFactory::getapplication();
$app->redirect('index.php?option=com_users&view=login'));
您可以使用插件來實現這一點(至少在 Joomla 3.x 中 - 不確定這將在多遠的時候立即起作用)。 這里的關鍵是 onUserAfterSave 事件,它告訴您用戶是新用戶還是現有用戶。
我前段時間寫了下面的代碼,所以不記得無法從 onUserAfterSave 事件處理程序中完成重定向的確切原因,但我認為重定向隨后會在核心 Joomla 用戶管理代碼的其他地方被覆蓋,如果你嘗試從那里開始,因此在會話中保存一個標志並在以后的事件處理程序中檢查它。
class PlgUserSignupRedirect extends JPlugin
{
public function onUserAfterSave($user, $isnew, $success, $msg)
{
$app = JFactory::getApplication();
// If the user isn't new we don't act
if (!$isnew) {
return false;
}
$session = JFactory::getSession();
$session->set('signupRedirect', 1);
return true;
}
function onAfterRender() {
$session = JFactory::getSession();
if ($session->get('signupRedirect')) {
JFactory::getApplication()->redirect('/my-post-signup-url');
$session->clear('signupRedirect');
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.