91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

discuz自主控制彈框顯示的方法

發布時間:2020-08-11 10:23:48 來源:億速云 閱讀:334 作者:小新 欄目:建站服務器

這篇文章將為大家詳細講解有關discuz自主控制彈框顯示的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

實現功能:

控制彈框的顯示與否

功能使用場景

在之前的一篇文章寫道,discuz實現自動注冊登錄。但是我們又不想讓那個提示信息出來。

在網上大概的搜索了一下,有的說后臺可以設置,但是咔咔到后邊瞅了一眼,它那個設置只是針對于固定的一些場景。

那么我們自己可以來寫一個適合我們項目的顯示方式

彈框實現剖析

使用discuz一段時間的都知道,前臺的彈框其實就是后臺showmessage這個方法決定的。

我們用代碼追蹤到這個方法在upload/source/function/function_core.php文件里  大概在1424行

discuz自主控制彈框顯示的方法

然后我們在追蹤dshowmessage這個方法

最終這個方法的文件是在upload/source/function/function_message.php 這里

然后我們把代碼拉到最后,可以看到一個show_messge的變量和加載了一個模板地址

discuz自主控制彈框顯示的方法

這個時候我們就去找這個模板位置:upload/template/default/touch/common/showmessage.htm

在這個模板里邊我們就能看到一個變量為show_message

discuz自主控制彈框顯示的方法

為了證實模板里的show_message和PHP文件里邊的show_message是一致的我們來做個測試

修改:upload/source/function/function_message.php   238行

discuz自主控制彈框顯示的方法

然后在頁面進行測試得到的結果是沒有問題的。倆個變量是一致的

discuz自主控制彈框顯示的方法

實現自己的顯示方式

經過上邊的測試,我們得知upload/source/function/function_message.php 文件的238行的show_message 與模板  upload/template/default/touch/common/showmessage.htm的show_message一致。

那么我們就可以聲明一個變量,如果是你想顯示自己的樣式就聲明一個變量,然后在模板里邊控制

以下是咔咔案例:只要你有這個需求咔咔的這個方案100%可以解決你的問題

這段代碼是判斷用戶是否注冊了,如果注冊了就直接登錄。(這里無需糾結,咔咔的案例是從原系統過來的。)

可以看到在showmessage中我新增了一個變量為is_login,并且值為1

discuz自主控制彈框顯示的方法

我們既然需要在模板里使用這個值,那就照貓畫虎,在upload/source/function/function_message.php文件里也把is_login聲明為全局變量

discuz自主控制彈框顯示的方法

然后拿著這個值你就可以在upload/template/default/touch/common/showmessage.htm模板里邊使用了

在這個里邊加上你自己的if就可以了

discuz自主控制彈框顯示的方法

還有一種特別簡單的方式就是在upload/source/function/function_message.php這個239行控制進入的模板

discuz自主控制彈框顯示的方法

那么這個時候需要做什么呢!就是建這個模板了

在upload/template/default/touch/common這個目錄下復制這個showmassge這個文件

discuz自主控制彈框顯示的方法

然后修改這個文件,讓進入后直接跳轉即可。

discuz自主控制彈框顯示的方法

實現效果

在登錄時候彈框已經沒有了

discuz自主控制彈框顯示的方法

在其他地方該有的還是有的

discuz自主控制彈框顯示的方法

在把本文的文件都修改完了以后呢!在一會想要使用自己定義的模板就可以直接使用

is_login就是你自定義模板的一個標識

showmessage('login_succeed', 'forum.php',['username'=>$username,'is_login'=>1],array('showdialog' => 1));

關于discuz自主控制彈框顯示的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節
推薦閱讀:
  1. js選擇彈框
  2. layer彈框

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

玛多县| 台山市| 泌阳县| 电白县| 焉耆| 田阳县| 秭归县| 赣州市| 滕州市| 浑源县| 电白县| 南开区| 内乡县| 宁武县| 南木林县| 义乌市| 长白| 瑞安市| 绩溪县| 邛崃市| 兴海县| 高尔夫| 大余县| 讷河市| 盐城市| 阿坝| 长武县| 丹凤县| 从江县| 雅安市| 沈丘县| 无为县| 岳西县| 孟村| 舞钢市| 连江县| 长白| 屏南县| 丰镇市| 喜德县| 辛集市|