我将网站从 1.7 转换为 2.5,一切都快完成了,但我遇到了一个问题。我想使用以前版本中存在的这两个自定义 K2 模板来进行用户注册和用户配置文件,因为它们使用 K2 作为用户注册机制。
我已将 K2 配置为Enable K2 User Profile
:
但无论出于何种原因,当我导航到index.php?option=com_users&view=register
它时,它仍然在抓取默认的注册表单。现在,我认为可能是 URL,但旧的 1.7 系统使用的是相同的 URL。因此,通过一些调试,我发现当布局被告知搜索文件时,K2 路径不在数组中。
我在这里做错了什么?
注意:我也尝试配置设置为的User Manager
so ,但我只是得到一个then 因为它只是没有覆盖该 K2 模板。Allow User Registration
No
403
更新
正如我在评论中所说,无论出于何种原因,我都没有 K2 注册菜单项类型。然而,最奇怪的是1.7版本也没有指向K2注册。
多一点背景。这是一个真正被破解的系统。该菜单实际上是使用直接自定义的 Jumi 模块构建的,当用户登录时,用于配置文件的链接是这样的:
index.php?option=com_users&view=user&layout=form&id=3
并且注册链接也是自定义的(即它是自定义视图上的链接)是这样的:
index.php?option=com_user&view=register
所以,简而言之,我对 Joomla 导航系统的了解还不够,无法理解如何让这些链接重新路由到驻留/components/com_k2/templates
文件夹的 K2 视图。
更新
我将文件夹register.php
中存在的视图/components/com_k2/templates
放入/templates/tmplname/html/com_users/register
文件夹中并将其重命名,default.php
以便默认用户注册导航将选择该视图。它确实选择了那个视图,这并不奇怪,但它也失败了:
<?php if(count(array_filter($this->K2Plugins))): ?>
因为K2Plugins
isnull
并且该功能不允许这样做array_filter
。我猜这是因为如果这个视图在com_k2
文件夹中,就像它的原始位置一样,这将是可用的。我正在尝试我现在能想到的一切。
它也抛出了这一行:
$this->K2Params->get('recaptchaOnRegistration')
因为K2Params
是 null 所以当然get
不可用。