Hallo, Gast! (Registrieren)

Letzte Ankündigung: Sicherheitsupdate: MyBB 1.8.26 veröffentlicht (10.03.21)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
ausgeblendete Avatare für Webcrawler sichtbar
#1
Hallo,

ich habe in meinem Forum Avatare ausgeblendet, nämlich für alle Usergruppen die hierarchisch gleich oder unterhalb der registrierten Gruppe sind. Für Webcrawler etwa sollten somit Avatare unsichtbar sein, genauso wie auch für Gäste und Registrierte. Für Registrierte funktioniert es auch, so wie es soll. Nun habe ich mein Forum mit
https://www.browseo.net/
angeschaut, der einem die Seite so zeigt, wie es ein Webcrawler sieht: Leider sieht man mit www.browseo.net die Avatare bei den Postings und ich versteh nicht warum.

Konkret habe ich im Admin-CP in
Home » Template-Sets » Default Templates » Template bearbeiten: postbit_avatar
die Zeile
Code:
<div class="author_avatar"><a href="{$post['profilelink_plain']}"><img src="{$useravatar['image']}" alt="" {$useravatar['width_height']} /></a></div>
durch
Code:
<if ($mybb->usergroup['gid'] != 3 AND $mybb->usergroup['gid'] != 4 AND $mybb->usergroup['gid'] != 6 AND $mybb->usergroup['gid'] != 10 AND $mybb->usergroup['gid'] != 12) then>
<div class="author_avatar"><img src="{$mybb->settings['bburl']}/images/default_avatar.png" alt="" {$useravatar['width_height']} /></div>
<else>
<div class="author_avatar"><a href="{$post['profilelink_plain']}"><img src="{$useravatar['image']}" alt="" {$useravatar['width_height']} /></a></div>
</if>
ersetzt. (Und ähnlich auch in
Home » Template-Sets » Default Templates » Template bearbeiten: memberlist_user_avatar
und
Home » Template-Sets » Default Templates » Template bearbeiten: member_profile_avatar
aber das ist hier mal irrelevant, da für Gäste die memberlist und die Profile ohnehin nicht zugänglch sind).

Meines Wissens nach sollte ein Webcrawler, genauso wie ein Gast, gid=1 haben und gemäß obigem Code Avatare nicht angezeigt bekommen. Warum sieht man die Avatare mit https://www.browseo.net/ trotzdem? Was müsste man tun, damit Webcrawler Avatare nicht angezeigt bekommen?

LG
Zitieren
#2
Ich weiß zwar jetzt nicht, warum es nicht funktionieren soll, frage aber mal:
Warum ist diese if-Anweisung so "code-intensiv"?
Es würde doch genügen, wenn du abfragst, ob es sich um einen eingeloggten User handelt.
PHP-Code:
<if ($mybb->user['uid'] != 0then>
.
.
</if> 

Alternativ kannst du ein Array in der if-Anweisung verwenden.
Zitieren
#3
Habe mich beim Schreiben von copy&paste hinreißen lassen, sorry. Eleganter wäre es sicher mit einem Array. Wie würde der Code mit Array aussehen? (uid=0 reicht deswegen nicht, weil zumindest auch Leute, die sich die Freiheit nehmen, sich im Forum nur mal zu registrieren, Avatare nicht sehen sollen).
Zitieren
#4
PHP-Code:
<if !in_array($mybb->user['usergroup'], array(3,4,6,10,12)) then>
.
<else>
.
</if> 
Zitieren
#5
Danke, hab den Code eingefügt, schaut besser aus :-)

Hab nun auch die Quelle meines eigentlichen Problems gefunden. Hat zwar nicht direkt was mit MyBB zu tun, aber vllt hat ja jemand dasselbe Problem:
Ich habe es in meinem Forum so eingestellt, dass für Webcrawler andere Templates verwendet werden als für normale User (nämlich Smartphone-freundliche Templates statt den default-Templates). Da das mit dem Anzeigen von Avataren in den Templates eingestellt wird, musste ich selbige Einstellungen, wie in den default-Templates, auch in den Smartphone-freundlichen Templates vornehmen. Nun werden die Avatare auch für Webcrawler nicht mehr angezeigt.
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Avatar für Gäste setzen + Avatare für Gäste verstecken windkind 28 2.869 20.02.2020, 02:58
Letzter Beitrag: hkkp