Discuz移動端二開之關注和粉絲頁面以及關注狀態
正文貫徹功能: 開發挪窩頭關注印張 開發平移穎屑絲印張 兌現從小我空間瞧見之關注列表都顯示已關注 心想事成自身瞧任何人關注列表時 自各兒關注之用戶顯示已關注 小我未關注之用戶顯示關注 解決如何在PHP公事陰沿顯示舉手投足嘴印張 在discuz中位移尖是沒有屑絲,關注印張之,那么就急需咱們來開發。偏下就是開發流程。 discuz中pc頭是有諦聽和儲存罐眾之功能。如下頭圖home.php?mod=follow&do=follower這此地址就是對應之pc末之屑絲印張 php零功底到接任直播視頻課:上登修業 然后俺們何嘗不可追溯PHP公事source/module/home/home_follow.php 之其一文本。在本條公文背,吾輩只需求令人矚目到follower 和 following 這倆個名諱。這倆個八個是關注之味道 三個是屑絲之含意 然后憑依discuz之拜謁機制吾輩去沙盤陰找九下面follow_follower.html其一文牘。但是在模版背沿俺們發現用以follow開頭之文牘就這幾個 持續趕到文本source/module/home/home_follow.php然后拉到最后瞅加載之沙盤。此處可足瞧到加載之模版就是上緣瞅到之follow_feed.html以此文本。 既然已經猜測是在此間了,那就寫八個測試代碼測試四下部。 經由測試咱們就已經無庸置疑無誤了,這此印張就是加載之關注印張和屑絲印張。 在上皮之測試會發現地址央告之是/home.php?mod=follow&do=follower,但是加載html文本卻是template/default/home/follow_feed.htm。也就是說在dsicuz中如果需求加載跟伸手地址不八致之文書,需求施用template因變量來加載。 那么下面表咱們自個兒寫三個走倒穎follow_follower文本。 之上就是倆電門注印張和屑絲印張PHP如何加載 在沙盤陰沿咱也足以這樣寫,論斷do為follower時躋身屑絲沙盤,為關注時上登關注沙盤 下邊圖就是咔咔開發關注印張之效果 那么印張寫完了我輩就需求落實數據對接了。繼往開來回到template/default/home/follow_feed.htm這此文牘。何嘗不可瞧到使動之數據是list,循環往復運用之是fuser這此變計量 張開discuz數據庫字典,堪好瞅到是否關注施用之是mutual其一字段 論據mutual斯是字段來駕御關注與已關注之顯示與不顯示 當本身進來自個兒空間時在關注列表背緣是全總顯示已關注 斷定條件是 當$_G[uid] == $_GET[uid]時mutual>=0即可 當自個兒上登他人空間查瞧關注列表時 如果是自身關注之用戶要求顯示已關注 否則顯示關注即可 這邊之咬定條件是 $_G[uid] != $_GET[uid]時mutual==-1或者mutual==1即可。此間為哪門子會有四個mutual=-1之標識。數據庫字典是沒有這此標識之,但是現實性測試出去之是有之,咔咔也瞅了源碼是做了八個評斷,先知道這么判明就行 在關注列表陰緣所有之鏈接地址都為home.php?mod=spacecp&ac=follow&op=del&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2。所有之用戶標識都是followuid即可 屑絲列表就很簡略,直接下祭-1和1斷定即可 也就是說mutual這此字段之值為0 和1是只能斷定自家在小我空間查瞅關注和屑絲列表時有何不可應用。如果是自家上登別樣用戶之屑絲和關注列表就會產生九個mutual之值為-1之九個字段 那也就是當自身躋身別樣用戶有本身已經關注之用戶時mutual之值就是-1 現今用戶A,用戶B,用戶C 用戶A關注了用戶C 然后用戶B上登到用戶A空間之關注列表是何嘗不可瞅到用戶C之 假如其一時節用戶B已經關注了用戶C,那么本條時刻關注之按鈕就是已關注,本條上下mutual之值就是-1(這種情景就是自家到旁人之關注列表查瞅用戶,如果有自家已經關注過之就會顯示已關注,并且mutual之值為-1) 其一辰光用戶B在回到自各兒之用戶空間查瞧關注列表就會顯示用戶C在小我之列表,但是本條時光mutual之值為0. 但是當用戶C也關注了用戶B時mutual之值就是1 從而說用戶當用戶B在自各兒空間之關注列表查瞅役使mutual之值為0和1評斷。當用戶B去查瞧用戶A之關注列表時使動mutual為-1和1來判明 現用用戶A,用戶B,用戶C 當用戶A關注了用戶C時,用戶C之屑絲列表就是有用戶A 本條時光用戶B做客用戶C之屑絲列表就只有用戶A, 以此早晚用戶A之關注勢態也是 未關注勢態,并且mutual之是0 假如用戶A也關注了用戶B,用戶B在用戶C之屑絲列表背查瞧用戶A之勢態也是未關注勢態 并且mutual之值為0 但是當用戶B關注了用戶A后,斯是天道用戶B在用戶C之屑絲列表查瞧用戶A之勢態就是已關注并且mutual之值為1示意互相關注 但是當用戶A沒有關注用戶B 這此時節用戶用戶B在用戶C之屑絲列表陰沿瞧到用戶A之勢態是未關注,當B被用戶A關注后勢態為已關注,mutual之值為-1 因而屑絲列表背緣咬定只有當mutual之值為-1或者1時是關注勢態,其余都是未關注勢態 如上就是兌現之所有進程,在下面六篇稿子會絲對這疙瘩之代碼進展分析 之上就是Discuz平移穎貳開之關注和屑絲印張以及關注勢態處分之事無巨細情節,更多請關注 小螞蚍蜉站長吧網其她相關筆札!前期未雨綢繆:解決PHP文本背沿顯示挪窩頭印張
那么咱們就趕來template/default/home/follow_feed.htm這此文牘陰沿,大概是在554行左右堪好瞅到很如數家珍之倆個分組六個follower和following
然后采風器調整為無繩機造訪越南式即可
開發屑絲印張和關注印張并奮斗以成數據接入
心想事成關注顯示與不顯示
兌現代碼
// 屑絲模版
<p class="follow_manage">
<!--{if $fuser[mutual] == -1 || $fuser[mutual] == 1}-->
<a id="a_followmod_{$fuser['uid']}" href="home.php?mod=spacecp&ac=follow&op=del&hash={FORMHASH}&fuid=$fuser['uid']&mobile=2" class="flw_btn_fo dialog">
<i class="iconfont icon-like_fill rq"></i>
<font class="grey">已關注</font>
</a>
<!--{else}-->
<a id="a_followmod_{$fuser['uid']}" href="home.php?mod=spacecp&ac=follow&op=add&hash={FORMHASH}&fuid=$fuser['uid']&mobile=2" class="flw_btn_fo dialog">
<i class="iconfont icon-like"></i>
<font class="grey">關注</font>
</a>
<!--{/if}-->
</p>
// 關注列表模版
<p class="follow_manage">
<!--{if $_G[uid] != $_GET[uid]}-->
<!--{if $fuser[mutual] == -1 || $fuser[mutual] == 1}-->
<a id="a_followmod_{$fuser['followuid']}" href="home.php?mod=spacecp&ac=follow&op=del&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2" class="flw_btn_fo dialog">
<i class="iconfont icon-like_fill rq"></i>
<font class="grey">已關注</font>
</a>
<!--{else}-->
<a id="a_followmod_{$fuser['followuid']}" href="home.php?mod=spacecp&ac=follow&op=add&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2" class="flw_btn_fo dialog">
<i class="iconfont icon-like"></i>
<font class="grey">關注</font>
</a>
<!--{/if}-->
<!--{else}-->
<!--{if $fuser[mutual] == 0 || $fuser[mutual] == 1}-->
<a id="a_followmod_{$fuser['followuid']}" href="home.php?mod=spacecp&ac=follow&op=del&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2" class="flw_btn_fo dialog">
<i class="iconfont icon-like_fill rq"></i>
<font class="grey">已關注</font>
</a>
<!--{else}-->
<a id="a_followmod_{$fuser['followuid']}" href="home.php?mod=spacecp&ac=follow&op=add&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2" class="flw_btn_fo dialog">
<i class="iconfont icon-like"></i>
<font class="grey">關注</font>
</a>
<!--{/if}-->
<!--{/if}-->
</p>
畫舉證釋用戶關注之論理料理
畫舉證釋屑絲之論理安排
小結
下一篇:discuz如何開發關注功可以