Seite 1 von 1

Benutzerdefinierte Profilfelder ausblenden f. Gäste

Verfasst: 09.08.2011 12:48
von Tim
So, dann habe ich heute gleich noch eine Frage, wo ich grade am Basteln bin. ;)
Ich habe dieses Thema gefunden (viewtopic.php?f=74&t=213188) wo es darum geht, den Avatar für Gäste auszublenden.
Ich habe im Forum nun ein Benutzerdefiniertes Profilfeld angelegt, welches neben den Beiträgen angezeigt wird. (Der reale Name)
Natürlich sollen Gäste und auch Bots den realen Namen nicht sehen können, sondern nur angemeldete User.
Das müsste ja ziemlich ähnlich funktionieren wie mit dem Avatar.
Hier ein Ausschnitt des Codes aus der viewtopic_body.html:

Code: Alles auswählen

<!-- IF postrow.POSTER_AVATAR and S_USER_LOGGED_IN and not S_IS_BOT  -->
				<tr>
					<td align="center">{postrow.POSTER_AVATAR}</td>
				</tr>
			<!-- ENDIF -->
            <!-- IF not (postrow.ONLINE_IMG or postrow.RANK_TITLE or postrow.RANK_IMG or postrow.POSTER_AVATAR) -->
				<tr>
					<td></td>
				</tr>
			<!-- ENDIF -->
				</table>

				<span class="postdetails">
					<!-- IF postrow.POSTER_JOINED --><br /><b>{L_JOINED}:</b> {postrow.POSTER_JOINED}<!-- ENDIF -->
					<!-- IF postrow.POSTER_POSTS != '' --><br /><b>{L_POSTS}:</b> {postrow.POSTER_POSTS}<!-- ENDIF -->
					<!-- IF postrow.POSTER_FROM --><br /><b>{L_LOCATION}:</b> {postrow.POSTER_FROM}<!-- ENDIF -->

					<!-- IF postrow.S_PROFILE_FIELD1 -->
						<!-- Use a construct like this to include admin defined profile fields. Replace FIELD1 with the name of your field. -->
						<br /><b>{postrow.PROFILE_FIELD1_NAME}:</b> {postrow.PROFILE_FIELD1_VALUE}
					<!-- ENDIF -->

					<!-- BEGIN custom_fields -->
						<br /><b>{postrow.custom_fields.PROFILE_FIELD_NAME}:</b> {postrow.custom_fields.PROFILE_FIELD_VALUE}
					<!-- END custom_fields -->
				</span>
Ich nehme an, dass eins von den unteren (im span-Bereich) die benutzerdefinierten Profilfelder anzeigt, ich weiß aber nicht, welcher Abschnitt.
Wenn ich das wüsste, würde ich den Rest alleine hinbekommen, daher wäre es super, wenn ich heute nochmal Hilfe bekommen würde. ;)
LG Tim

Re: Benutzerdefinierte Profilfelder ausblenden f. Gäste

Verfasst: 09.08.2011 13:06
von hackepeter13
Da sieht wohl jemand den Wald vor lauter Bäumen nicht, wa. ^^

Die Zeile mit dem <!-- IF vor dem Avatar gibt dir doch nun schon die Vorlage. ;)

Pack den Codeteil für die Custom Fielder einfach ebenfalls in das IF ein, was dann so aussieht:

Code: Alles auswählen

			<!-- IF S_USER_LOGGED_IN and not S_IS_BOT  -->
               <!-- IF postrow.S_PROFILE_FIELD1 -->
                  <!-- Use a construct like this to include admin defined profile fields. Replace FIELD1 with the name of your field. -->
                  <br /><b>{postrow.PROFILE_FIELD1_NAME}:</b> {postrow.PROFILE_FIELD1_VALUE}
               <!-- ENDIF -->

               <!-- BEGIN custom_fields -->
                  <br /><b>{postrow.custom_fields.PROFILE_FIELD_NAME}:</b> {postrow.custom_fields.PROFILE_FIELD_VALUE}
               <!-- END custom_fields -->
			<!-- ENDIF -->
Damit werden alle Custom Felder vor Gäste und Bots versteckt. ;)

Re: Benutzerdefinierte Profilfelder ausblenden f. Gäste

Verfasst: 09.08.2011 13:09
von Tim
Mh gut, so kann man es auch machen. ^^ :D
Ich hatte gedacht, dass nur ein Abschnitt die benutzerdefinierten Profilfelder einfügt und die anderen was anderes tun und wollte deswegen wissen, welches der richtige Abschnitt ist. Aber so geht es auch, danke schön. :wink:

Re: Benutzerdefinierte Profilfelder ausblenden f. Gäste

Verfasst: 09.08.2011 13:27
von hackepeter13
Für wirklich alle Custom Felder ist der Teil zuständig:

Code: Alles auswählen

<!-- BEGIN custom_fields -->
                  <br /><b>{postrow.custom_fields.PROFILE_FIELD_NAME}:</b> {postrow.custom_fields.PROFILE_FIELD_VALUE}
               <!-- END custom_fields -->
Der Zeigt alle im ACP angelegten Felder nacheinander (in der Reihenfolge wie im ACP bestimmt) an.

Der andere Teil dadrüber ist eine Art Vorlage, wenn man nur speziel ausgewählte Felder anzeigen lassen will und diese dann evtl. auch noch anders darstellen lassen will.
Das ermöglicht dir auch die Custom Felder von einder getrennt überall auf der Seite zu platzieren, z.B. kannst du dann das Feld Name direkt unter dem Benutzernamen platzieren und die anderen Custom Felder unter dem Wohnort.

Dazu musst du dann FIELD1 mit der Feldbezeichnung, die du im ACP angelegt hast umbenennen, siehe dazu auch die Kommentarzeile:

Code: Alles auswählen

<!-- Use a construct like this to include admin defined profile fields. Replace FIELD1 with the name of your field. -->