Han*_*ink 5 php joomla content-management-system joomla1.7
在1.6之前的Joomla中,我可以将菜单项设置为公共,其内容:例如注册的文章.
这导致人们在未登录时可以看到菜单中文章的链接,但是只要他们点击它就会得到一个登录组件.之后他们看到了这篇文章.
在1.7中,这些相同的操作导致这样的情况:当我单击链接时,组件屏幕保持为空.
当前端用户未以足够的权限登录时,如何获取注册文章以显示登录屏幕?以前太容易了,我现在似乎无法上班.
我要回答我自己的问题,因为我相信人们将来会需要这个,我的解决方案只涉及一些额外代码的规则,然后你可以设置每篇文章等......注册,你会看到一个登录字段当用户未登录时
在你的模板中,index.php将它放在顶部附近,它可以获得文章的访问级别.
$article =& JTable::getInstance("content");
$article->load(JRequest::getVar('id'));
$cAccLevel = $article->get("access");
Run Code Online (Sandbox Code Playgroud)
然后在组件上方添加一个模块位置,并仅在所需的访问级别> 1时显示
<?php if($cAccLevel > 1): ?>
<jdoc:include type="modules" name="LOGIN_MODULE_POSITION" />
<?php endif; ?>
Run Code Online (Sandbox Code Playgroud)
然后在模块管理器中将登录模块添加到LOGIN_MODULE_POSITION.
瞧...不需要路由等......一切都开箱即用,我选择了这样的注销框和动作字段:
.logout-button,
.actions{
display:none;
}
Run Code Online (Sandbox Code Playgroud)
祝好运!
创建"真实"菜单(例如,"主菜单")和将为所有用户显示的菜单项(例如"提交文章").菜单项的菜单项类型为"别名".它的"菜单项"参数将是"隐藏菜单"上的"提交文章"菜单项.此菜单项的访问级别将为"公共",因为我们希望每个人都能够查看和使用它.
为此菜单创建一个"mod_mainmenu"类型的模块,就像您对任何菜单一样.
现在,当访客(未登录用户)访问"提交文章"菜单选项时,它会将其重定向到空白页面,其中包含"仅限注册访问者"消息..如果他们成功登录,他们将被带到所需的页面(在这种情况下,"提交文章").如果已经登录,他们会直接去那里.
| 归档时间: |
|
| 查看次数: |
18069 次 |
| 最近记录: |