您现在的位置是:首页 > cms教程 > Discuz教程Discuz教程
discuz控制弹框显示的方法
醉蓝2025-06-22Discuz教程已有人查阅
导读本文实现功能:控制弹框的显示与否在之前的一篇文章写道,discuz实现自动注册登录。但是我们又不想让那个提示信息出来。
本文实现功能:控制弹框的显示与否
功能使用场景
在之前的一篇文章写道,discuz实现自动注册登录。但是我们又不想让那个提示信息出来。
在网上大概的搜索了一下,有的说后台可以设置,但是咔咔到后边瞅了一眼,它那个设置只是针对于固定的一些场景。
那么我们自己可以来写一个适合我们项目的显示方式
弹框实现剖析
使用discuz一段时间的都知道,前台的弹框其实就是后台showmessage这个方法决定的。
我们用代码追踪到这个方法在upload/source/function/function_core.php文件里 大概在1424行
然后我们在追踪dshowmessage这个方法
最终这个方法的文件是在upload/source/function/function_message.php这里
然后我们把代码拉到最后,可以看到一个show_messge的变量和加载了一个模板地址
这个时候我们就去找这个模板位置:upload/template/default/touch/common/showmessage.htm
在这个模板里边我们就能看到一个变量为show_message。
为了证实模板里的show_message和PHP文件里边的show_message是一致的我们来做个测试
修改:upload/source/function/function_message.php 238行
然后在页面进行测试得到的结果是没有问题的。俩个变量是一致的
实现自己的显示方式
经过上边的测试,我们得知upload/source/function/function_message.php文件的238行的show_message与模板 upload/template/default/touch/common/showmessage.htm的show_message一致。
那么我们就可以声明一个变量,如果是你想显示自己的样式就声明一个变量,然后在模板里边控制
以下是咔咔案例:只要你有这个需求咔咔的这个方案可以解决你的问题
这段代码是判断用户是否注册了,如果注册了就直接登录。(这里无需纠结,咔咔的案例是从原系统过来的。)
可以看到在showmessage中我新增了一个变量为is_login,并且值为1
我们既然需要在模板里使用这个值,那就照猫画虎,在upload/source/function/function_message.php文件里也把is_login声明为全局变量
然后拿着这个值你就可以在upload/template/default/touch/common/showmessage.htm模板里边使用了
在这个里边加上你自己的if就可以了
还有一种特别简单的方式就是在upload/source/function/function_message.php这个239行控制进入的模板
那么这个时候需要做什么呢!就是建这个模板了
在upload/template/default/touch/common这个目录下复制这个showmassge这个文件
然后修改这个文件,让进入后直接跳转即可。
在登录时候弹框已经没有了
在其他地方该有的还是有的
在把本文的文件都修改完了以后呢!在一会想要使用自己定义的模板就可以直接使用
is_login就是你自定义模板的一个标识
功能使用场景
在之前的一篇文章写道,discuz实现自动注册登录。但是我们又不想让那个提示信息出来。
在网上大概的搜索了一下,有的说后台可以设置,但是咔咔到后边瞅了一眼,它那个设置只是针对于固定的一些场景。
那么我们自己可以来写一个适合我们项目的显示方式
弹框实现剖析
使用discuz一段时间的都知道,前台的弹框其实就是后台showmessage这个方法决定的。
我们用代码追踪到这个方法在upload/source/function/function_core.php文件里 大概在1424行
然后我们在追踪dshowmessage这个方法
最终这个方法的文件是在upload/source/function/function_message.php这里
然后我们把代码拉到最后,可以看到一个show_messge的变量和加载了一个模板地址
这个时候我们就去找这个模板位置:upload/template/default/touch/common/showmessage.htm
在这个模板里边我们就能看到一个变量为show_message。
为了证实模板里的show_message和PHP文件里边的show_message是一致的我们来做个测试
修改:upload/source/function/function_message.php 238行
然后在页面进行测试得到的结果是没有问题的。俩个变量是一致的
实现自己的显示方式
经过上边的测试,我们得知upload/source/function/function_message.php文件的238行的show_message与模板 upload/template/default/touch/common/showmessage.htm的show_message一致。
那么我们就可以声明一个变量,如果是你想显示自己的样式就声明一个变量,然后在模板里边控制
以下是咔咔案例:只要你有这个需求咔咔的这个方案可以解决你的问题
这段代码是判断用户是否注册了,如果注册了就直接登录。(这里无需纠结,咔咔的案例是从原系统过来的。)
可以看到在showmessage中我新增了一个变量为is_login,并且值为1
我们既然需要在模板里使用这个值,那就照猫画虎,在upload/source/function/function_message.php文件里也把is_login声明为全局变量
然后拿着这个值你就可以在upload/template/default/touch/common/showmessage.htm模板里边使用了
在这个里边加上你自己的if就可以了
还有一种特别简单的方式就是在upload/source/function/function_message.php这个239行控制进入的模板
那么这个时候需要做什么呢!就是建这个模板了
在upload/template/default/touch/common这个目录下复制这个showmassge这个文件
然后修改这个文件,让进入后直接跳转即可。
在登录时候弹框已经没有了
在其他地方该有的还是有的
在把本文的文件都修改完了以后呢!在一会想要使用自己定义的模板就可以直接使用
is_login就是你自定义模板的一个标识
showmessage('login_succeed', 'forum.php',['username'=>$username,'is_login'=>1],array('showdialog' => 1));
本文标签:
很赞哦! ()
相关教程
图文教程
Discuz首页四格插件使用方法
第一步:上传相关文件:包含文件:pic.php 请上传至论坛根目录images目录 请将目录下的文件(两个图片一个FLASH)上传到论坛images目录下第二步:修改index.php(修改前请先备份,出错时可以恢复)
Discuz自带参数防御CC攻击和原理分析
CC攻击确实是很蛋疼的一种攻击方式,Discuz!的配置文件中已经有了一个自带的减缓CC攻击的参数,在配置文件config.inc.php中:
Discuz模板的安装方法
很多同学都不会安装模板和修改模板,从今天开始站帮网开始更新一些模板相关的简易教程,提供新手站长学习使用
ECShop2.7.2整合Discuz 6.0论坛的步骤方法
整合ECShop2.7.2与Discuz!6.01. 安装ECShop2.7.2a) 推荐配置:LAMP(Linux+Apache+Mysql+PHP)操作系统:Linux (支持Unix/FreeBSD/Solaris/Windows NT(2000/2003)等操作系统)
相关源码
-
(自适应响应式)法律咨询律师事务所法务pbootcms源码下载为律师事务所、法律咨询机构设计,特别适合展示法律服务、律师团队和成功案例。采用响应式技术,确保在不同设备上都能提供专业的法律信息展示和咨询服务。查看源码 -
(自适应多语言)WordPress开源主题MirageV资讯个人博客源码MirageV资讯类个人博客主题源码/WordPress主题/全开源MirageV 是一款开源的 WordPress 主题,支持自适应、暗黑模式、多语言等功能,查看源码 -
(自适应)绿色园林建筑花卉园艺艺术模板免费下载为景观设计及园艺企业打造的响应式网站框架,基于PbootCMS系统开发,帮助传统园林行业建立现代化数字展示平台。采用标准DIV+CSS前端架构,代码精简无冗余。查看源码 -
(自适应)水墨风中药馆中医名医介绍pbootcms网站模板本模板基于PbootCMS内核开发,为中医馆、中医药企业量身定制,可快速搭建具有传统文化特色的官方网站。自适应手机端设计,数据实时同步,助您高效展示中医特色诊疗、中药产品、养生知识等内容,塑造专业品牌形象。查看源码 -
帝国cms自适应古诗词古籍名句网站整站带数据基于帝国CMS打造的专业古诗词文化网站模板,专注于古典文学内容的展示与传播。模板设计蕴含传统文化韵味,支持诗词鉴赏、名句赏析、古籍整理等特色功能,为诗词爱好者提供优质的在线阅读体验。查看源码 -
帝国cms7.5自适应手机端在线课程教育网站源码基于帝国CMS后台管理系统,支持在线修改支付参数、联系方式等配置信息,操作界面直观便捷。专注于在线教育视频领域,提供完整的视频课程展示、付费购买及在线支付解决方案。支持多种支付渠道,满足教育培训机构的运营需求。查看源码
| 分享笔记 (共有 篇笔记) |
