登录 注册

登录

问题 如何定制点击邮件中激活帐号的链接后跳转到的页面

更多
2013年12月14日 23:29 #1 作者: shenkwen
用的是joomla 3.2。以前很少做需要注册用户的网站,所以没有碰到过这个问题:
新用户注册以后会说到一封激活邮件,点击邮件中的链接就可以激活帐号,同时打开一个网站上的页面,页面上会有一条信息显示该帐号已激活。
请问如何定制该页面上的其他内容呢?

登录 或者   注册一个会员帐号 来参与讨论

更多
2013年12月15日 13:33 #2 作者: 野草工作室
components\com_users\controllers\registration.php

位置:第79行左右
		elseif ($useractivation == 1)
		{
			$this->setMessage(JText::_('COM_USERS_REGISTRATION_ACTIVATE_SUCCESS'));
			$this->setRedirect(JRoute::_('index.php?option=com_users&view=login', false));
		}

$this->setMessage 是显示账号成功激活的提示信息
$this->setRedirect 是跳转页面

你可以修改设定跳转到一个文章页面试试


野草工作室提供专业 Joomla建站 服务,点击查看我们的 Joomla案例

登录 或者   注册一个会员帐号 来参与讨论

更多
2013年12月15日 21:50 #3 作者: shenkwen
非常感谢!
我的链接是sef的,要怎么改呢?

登录 或者   注册一个会员帐号 来参与讨论

更多
2013年12月16日 11:37 #4 作者: 野草工作室
编辑Joomla文章时,点击编辑器下面的文章按钮,就会得到相应带index.php?的文章URL


野草工作室提供专业 Joomla建站 服务,点击查看我们的 Joomla案例

登录 或者   注册一个会员帐号 来参与讨论

更多
2013年12月16日 15:22 #5 作者: Joomla之门
我对楼主的问题的理解是:你要修改的页面内容,是用户点击了通知邮件当中的“激活链接”之后,在网站上打开的那个页面的内容,对吗?

那个激活消息页面,没有专用的网址。如果你注意看通知邮件中的激活链接,其 URL 格式一般是:
http://www.domain.com/index.php?option=com_users&task=registration.activate&token=a647330aa4308818fca4390ca3aabe08

但是这个 com_users 组件,并没有专用的“激活后视图”(user activated layout),一般都是系统根据 URL 里面的 token 令牌,到数据库中验证之后,自动跳转到网站首页,同时,以“系统通知”(system message)形式,显示一条“账号已激活”的文字消息。也就是说,激活后用户看到的内容,就是这条消息,加上首页内容。

在这种情况下,用户几乎无法自定义这个“激活后页面”的内容。

难道一点办法都没有了吗?也不是,如果开发一个插件,或许能解决。

我个人认为:可以开发一个系统插件,自动探测(detect)并拦截激活链接,该链接必须首先完成系统本应该提供的激活任务,然后,该插件允许站长在参数中自定义一个“激活后转向指定URL”。这样一来,站长就完全可以利用“未分类文章”来设计一个专用页面,不仅可以控制该页面的组件部分内容,还能控制显示哪些模块(利用 Advanced Module Manager 根据 url 参数来筛选)。

但是到目前为止,我没有见过这样的插件。如果楼主需要,可以联系开发人员做一个。

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!

登录 或者   注册一个会员帐号 来参与讨论