关于用户登录后,菜单项显示用户名的问题

想在一个模块位置上显示菜单,这个菜单面向访客就是登录注册,登录后显示用户名和其他下拉菜单,这种情况是不是必须用第三方组件或者模块来实现?joomla核心没有这个功能是么
已邀请:

3P网络 - 背着回忆的旅游人,即使是再细微的风景,也会留在心中的一个角落~

赞同来自:

这个很容易实现,基本上就是一个“模块发布规则”技巧问题,你唯一需要的第三方扩展是
Advanced Module Manager 高级模块管理器

操作方法:
1、选择一个合适的模块位置,例如放在右侧栏,比方说这个位置叫做 position-7 ;
2、将 Joomla 核心自带的“登录”模块发布到 position-7 这个位置,限制它的分配规则为:仅针对 “游客”显示(意味着一旦登录成功就隐藏);
3、将“用户菜单”这个模块(采用“菜单”这个模块来制作,上面囊括你想显示给注册会员的那些菜单项目)也发布到 position-7 这个位置,但是限制其访问权限为 Registered 。
这样就 OK 了。当访客还未登录时,在 position-7 这里,只看到一个登录表单(底部有注册链接),一旦登录成功,该位置换成了“用户菜单”。

孤独者 - 世界属于那些勤于思考的人,更属于那些善于行动的人

赞同来自:

这个样子实现的登录模块是一个比较大的模块位置,实际上我还是想菜单项那种,然后点击可以弹出式也可以跳转页面,这个问题倒是不大,只不过这个菜单项没办法显示为用户名,现在用的第三方不支持easysocial,悲剧啊

妥协 - 不会轻易妥协的人不愿意将就的人任性自由的人总是活得比较累

赞同来自:

如果你想要将登录模块作为主菜单的下拉子菜单来显示,那就必须满足一个条件:你的菜单系统允许在子菜单上加载模块。
由于 Joomla 核心自带的菜单模块不具备这种功能,因此,你的菜单系统必须是 Mega Menu (一般基于 T3 框架的模板都使用,例如 JA 系列及 JoomShaper系列、Bowtheme 系列商业模板),或者是基于 Gantry5 框架的模板(RT 系列最新的模板都是 gantry5 模板),这些模板的菜单系统都允许在子菜单上加载模块。
不过,还有一个小问题:即使能够在子菜单上加载登录模块,也无法将第一级菜单项目的标题设置为“动态显示当前已登录用户的用户名”,菜单项目标题必须是静态的。只能设置成“登录”(显示给游客)和“我的”(显示给已登录用户)。—— 这里使用了访问权限的技巧,使得游客和已登录用户各自只能看到一个菜单项目标题。

要回复问题请先登录注册