Die in diesem Artikel implementierten Funktionen:
Entwicklung einer mobilen Followerseite
Entwicklung einer mobilen Fanseite
Stellen Sie sicher, dass die Beobachtungsliste, die Sie in Ihrem eigenen Bereich sehen, anzeigt, dass Sie ihr gefolgt sind
Wenn Sie die Beobachtungslisten anderer Personen sehen, werden die Benutzer Sie „Folgen“ wird wie folgt angezeigt und die Benutzer, denen Sie nicht folgen, werden angezeigt. Zeigen Sie Aufmerksamkeit
Lösen Sie, wie eine mobile Seite in einer PHP-Datei angezeigt wird
In discuz hat die mobile Seite keine Fans und Follower, also haben wir muss es weiterentwickeln. Das Folgende ist der Entwicklungsprozess.
Die PC-Version von discuz verfügt über Zuhör- und Zuhörerfunktionen. Wie unten gezeigt, ist die Adresse home.php?mod=follow&do=follower die entsprechende PC-Fanseite
Dann können wir die verfolgen PHP-Datei source/module/home/home_follow.php Diese Datei. In dieser Datei müssen wir nur die folgenden und folgenden Namen beachten. Eines davon bedeutet Aufmerksamkeit, das andere bedeutet Fans
Dann gehen wir gemäß dem Zugriffsmechanismus von discuz zur Vorlage Suchen Sie die Datei follow_follower.html. Aber in der Vorlage haben wir festgestellt, dass die einzigen Dateien, die mit folgen beginnen, diese sind:
Weiter zur Dateiquelle/Modul/ Home/home_follow.php und scrollen Sie dann bis zum Ende, um die geladene Vorlage anzuzeigen. Hier sehen Sie, dass es sich bei der geladenen Vorlage um die oben gezeigte Datei follow_feed.html handelt.
Dann kommen wir zur Datei template/default/home/follow_feed.htm. Ab Zeile 554 sehen Sie zwei bekannte Module und einen Follower.
Da Sie nun erraten haben, dass es hier ist, schreiben wir einen Testcode, um es zu testen.
Nach dem Test sind wir überzeugt, dass es sich bei dieser Seite um die geladene Folgeseite und Fanseite handelt.
Der obige Test findet die Adressanfrage Die eine ist /home.php?mod=follow&do=follower, aber die geladene HTML-Datei ist template/default/home/follow_feed.htm. Das heißt, wenn Sie eine Datei laden müssen, die nicht mit der angeforderten Adresse in dsicuz übereinstimmt, müssen Sie zum Laden die Vorlagenfunktion verwenden.
Dann schreiben wir selbst eine mobile follow_follower-Datei.
Anschließend stellen Sie den Browser auf den mobilen Zugriffsmodus ein
Oben erfahren Sie, wie Sie die zweite Folgeseite und Fanseite in PHP laden
Wir können auch so in die Vorlage schreiben, wenn das so ist Follower, geben Sie die Fan-Vorlage ein, wenn Sie folgen 🎜> Nachdem die Seite geschrieben wurde, müssen wir das Datenandocken implementieren. Fahren Sie zurück zur Datei template/default/home/follow_feed.htm. Sie können sehen, dass es sich bei den verwendeten Daten um eine Liste handelt und die Fuser-Variable in der Schleife
Öffnen Sie das Discuz-Datenbankwörterbuch und Sie können sehen, ob der Fokus das gegenseitige Feld verwendet Steuern Sie die Fokus und Fokus basierend auf dem gegenseitigen Feld Anzeigen oder Nichtanzeige derjenigen, denen Sie gefolgt sind Wenn Sie Ihren eigenen Bereich betreten, werden alle Personen, denen Sie gefolgt sind, in der folgenden Liste angezeigt. Die Beurteilungsbedingung ist, wenn $_G[uid] == $_GET[uid] Wenn mutual>=0, Wenn Sie den Bereich einer anderen Person betreten, um die Folgeliste anzuzeigen, wenn der Benutzer Sie müssen wie folgt angezeigt werden, andernfalls wird die Beurteilungsbedingung hier wie folgt angezeigt: $_G [uid] != $_GET[uid], es kann „mutual==-1“ oder „mutual==1“ verwendet werden. Warum gibt es hier das Flag „mutual=-1“? Das Datenbankwörterbuch hat dieses Logo nicht, aber es wurde in tatsächlichen Tests gefunden. Kaka hat sich auch den Quellcode angesehen und zuerst ein Urteil gefällt list Alle Linkadressen sind home.php?mod=spacecp&ac=follow&op=del&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2. Alle Benutzer-IDs sind folgenuid Die Fanliste ist sehr einfach, verwenden Sie einfach -1 und 1, um zu beurteilen Das ist, wenn der Wert von Das gemeinsame Feld ist 0 und 1, es kann nur verwendet werden, wenn Sie die folgenden und Fan-Listen in Ihrem eigenen Bereich anzeigen. Wenn Sie die Fans- und Aufmerksamkeitslisten anderer Benutzer eingeben, wird ein Feld mit einem gegenseitigen Wert von -1 generiert Das heißt, wenn Sie andere Benutzer eingeben, werden Sie Benutzer sein habe befolgt Der Wert von gegenseitig ist -1 Jetzt Benutzer A, Benutzer B, Benutzer C Benutzer A folgt Benutzer C Dann betritt Benutzer B die Folgeliste des Bereichs von Benutzer A und kann Benutzer C sehen. Wenn Benutzer B zu diesem Zeitpunkt bereits Benutzer C gefolgt ist, dann die Schaltfläche „Folgen“. Zu diesem Zeitpunkt ist „Gefolgt“. Zu diesem Zeitpunkt beträgt der Wert von „mutual“ -1 (in diesem Fall gehen Sie zur Follow-Liste anderer Personen, um den Benutzer anzuzeigen. Wenn es jemanden gibt, dem Sie gefolgt sind, wird dies als angezeigt gefolgt, und der Wert von gegenseitig ist -1) Wenn Benutzer B zu diesem Zeitpunkt zu seinem Benutzerbereich zurückkehrt, um die folgende Liste anzuzeigen, zeigt er an, dass sich Benutzer C in seinem befindet Liste, aber zu diesem Zeitpunkt ist der Wert von Mutual 0. Wenn Benutzer C jedoch auch Benutzer B folgt, ist der Wert von Mutual Es ist 1 , also wenn Benutzer B die Beobachtungsliste überprüft Für die Beurteilung seines eigenen Raums verwendet er den gegenseitigen Wert von 0 und 1. Wenn Benutzer B die Beobachtungsliste von Benutzer A anzeigt, verwenden Sie die gegenseitigen Werte -1 und 1, um zu beurteilen Aktueller Benutzer A, Benutzer B, Benutzer C Wenn Benutzer A Benutzer C folgt, wird Benutzer C in die Fanliste von Benutzer C aufgenommen A Zu diesem Zeitpunkt ist Benutzer A die einzige Fanliste, auf die Benutzer B zugreift. Zu diesem Zeitpunkt ist der Folgestatus von Benutzer A ebenfalls nicht verfolgt und der gegenseitige Wert ist 0 Wenn Benutzer A auch Benutzer B folgt, überprüft Benutzer B den Status von Benutzer A in der Fanliste von Benutzer C und er wird ebenfalls nicht mehr verfolgt, und der gemeinsame Wert ist 0 Aber wenn Benutzer B Benutzer A folgt, überprüft Benutzer B den Status von Benutzer A in der Fanliste von Benutzer C und zeigt an, dass er Benutzer A gefolgt ist, und der gegenseitige Wert ist 1, was bedeutet, dass sie einander folgen Aber wenn Benutzer A Benutzer B nicht folgt dann sieht Benutzer B den Status von Benutzer A in der Fanliste von Benutzer C als nicht gefolgt. Wenn B Benutzer A folgt, wird der Der Status lautet „Bereits verfolgt“, der Wert von „mutual“ ist -1 , daher wird in der Fanliste beurteilt, dass er nur dann vorhanden ist, wenn der Wert von „mutual“ -1 oder 1 ist Der folgende Status und der Rest befinden sich im nicht verfolgten Status Das Obige ist der gesamte Implementierungsprozess. Dieser Code wird analysiert im nächsten Artikel verwendet wird, um Aufmerksamkeit zu erregen Anzeige und Nichtanzeige
Implementierungscode
// 粉丝模板
<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>
Zeichnen Sie ein Bild, um die logische Verarbeitung zu erklären, die dem Benutzer Sorgen bereitet
Zeichnen Sie ein Bild, um die logische Verarbeitung von Fans zu erklären
Zusammenfassung
Das obige ist der detaillierte Inhalt vonZweiter Start des Discuz-Mobilterminals: Follow- und Fanseiten sowie Follow-Statusverarbeitung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!