Login 在登录页面上添加登录portlet

Login 在登录页面上添加登录portlet,login,modal-dialog,liferay,portlet,liferay-6,Login,Modal Dialog,Liferay,Portlet,Liferay 6,我正在使用现有的登录portlet构建一个基本的登录页面 我只想有一个功能,当用户访问网站时,现在localhost:8080,登录portlet应该弹出 这可行吗?如果是这样,有人能告诉我怎么做吗 这是当前默认页面的外观: 要登录,我必须明确地单击“登录”蓝色按钮,然后它弹出一个模式登录portlet 但我想在这里做的是: 每当用户单击默认url时,它应该立即要求用户登录,而不是显示带有登录按钮的空白页面(类似于输出图像) 或者甚至是一个模式登录框(任何易于定制的) 及 每当用户点击任何

我正在使用现有的登录portlet构建一个基本的登录页面

我只想有一个功能,当用户访问网站时,现在localhost:8080,登录portlet应该弹出

这可行吗?如果是这样,有人能告诉我怎么做吗


这是当前默认页面的外观:

要登录,我必须明确地单击“登录”蓝色按钮,然后它弹出一个模式登录portlet

但我想在这里做的是:

  • 每当用户单击默认url时,它应该立即要求用户登录,而不是显示带有登录按钮的空白页面(类似于输出图像)
  • 或者甚至是一个模式登录框(任何易于定制的) 及
  • 每当用户点击任何其他url时,例如,
    localhost:8080/web/project1/home
    ,如果用户未登录,则应强制其先登录

    开箱即用的两种可能性:

    • 在主页上只放置登录portlet,显示在该位置(通常为/web/guest/home)
    • 保护您的默认页面对来宾用户不可见(这将自动转发到登录portlet)-请参阅“管理页面”界面上的“权限”按钮

    还有更多,但这些似乎是第一个也是最明显的。让我知道其中一个是否适合您,或者您请求的原因是什么。据我所知,您希望登录Portlet作为模式窗口/灯箱弹出到当前页面上(即不离开页面)。好的,要实现这一点,您必须开发所有portlet,以使用AJAX创建指向受保护资源的链接。因此,当您收到未经验证的请求时,您可以停留在同一页面上并显示登录对话框

    这是一种高层次的方法。您需要1)在主题中嵌入登录portlet,2)在主题中添加以下javascript功能:

    • 回调函数-处理未经验证请求的响应
    • 渲染模式/灯箱的步骤

    在实现此功能时,您可能会遇到惊喜。

    Hi@olaf,登录portlet已经添加到主页(/web/guest/home)。。。当尝试再次添加到主页时,它不允许我添加它。我不明白-如果它已经存在,为什么要再次添加它?嗯。。我将用图片编辑这个问题。我希望这能说明问题。那么,你试过我的建议吗?这对你不起作用,为什么?嗨@Olaf,是的,我有对于您提到的第一个选项,我的默认页面已经包含登录portlet,因此当我尝试“添加”登录portlet时,该选项将变灰。它不允许我添加它对于第二个选项,当我对所有用户禁用默认页面的查看访问时,它崩溃了!现在我收到一条消息——“网站有一个重定向循环”!