Infos über den Autor

WordPress Header, Foto: Cowboy of Bottrop, Lizenz: CC-by-sa 3.0 de
closeDieser Beitrag wurde vor 8 Jahren 8 Monaten 26 Tagen veröffentlicht. Die Informationen in diesem Beitrag sind möglicherweise veraltet. Bitte benutze die Suche oder das Archiv, um nach neueren Informationen zu diesem Thema zu suchen.

WordPress LogoIch habe eben ein bisschen am Theme gespielt, und auf der single.php eine Infobox mit Autoren-Informationen eingebaut. Gesehen habe ich das woanders schon, aber jetzt eine klasse Umsetzung gefunden.

Für die Umsetzung müssen 3 Dateien des verwendeten Themes bearbeitet werden:

  1. single.php: Klar, hier soll die Box ja erscheinen ;)
  2. functions.php: Hier werden die Filter für die Erfassung z.B. des Twitternamen definiert, damit man Selbigen im Profil angeben kann
  3. style.css: Schließlich soll die Box auch optisch passen

Die Einbindung ist im Schweizer WordPress Magazin sehr gut erklärt:

Zunächst mal baut man die Box in die single.php ein, hier im Beispiel meine Version:

Der Autor:

  • ICQ:
  • Twitter:
  • Skype: Mein Status

Dieser Block kommt natürlich in den Loop, da hier de Artikel-Autor gemeint ist, sinnvollerweise direkt unter Lies den Rest ...»

'); ?> (Der Inhalt der Klammer kann abweichen), also unter den Inhalt des Artikels.

Der Parameter $size = 100 beim Avatar gibt die Größe desselben an. Das Avatar wird über die Mail-Adresse des Autors bei Gravatar.com geholt.

Die ICQ-Nummer konnte man in früheren WP-Versionen mal in seinem Profil angeben, daher war diese Information bei mir noch in der Datenbank hinterlegt. Ich habe aber in der functions.php einen Filter eingerichtet, um die Nummer bei Bedarf zu ändern, oder anderen Blogautoren die Möglichkeit zu geben, ihre ICQ-Nummer nachzutragen. Des Weiteren habe ich Filter für Twitter und Skype angelegt, so dass beide Namen im Benutzerprofil eingegeben und geändert werden können. Folgenden Code habe ich dafür in die functions.php eingefügt:

function wpm_add_twitter_contactmethod( $contactmethods ) {
 // Twitter hinzufügen
 $contactmethods['twitter'] = 'Twitter';
 return $contactmethods;
}
add_filter('user_contactmethods','wpm_add_twitter_contactmethod',10,1);

function wpm_add_skype_contactmethod( $contactmethods ) {
 // Skype hinzufügen
 $contactmethods['skype'] = 'Skype';
 return $contactmethods;
}
add_filter('user_contactmethods','wpm_add_skype_contactmethod',10,1);

function wpm_add_icq_contactmethod( $contactmethods ) {
 // ICQ hinzufügen
 $contactmethods['icq'] = 'ICQ';
 return $contactmethods;
}
add_filter('user_contactmethods','wpm_add_icq_contactmethod',10,1);

Die neuen Eingabefelder findet man im Benutzerprofil, in der Reihenfolge, wie sie hier angelegt sind, und unterhalb der vorhandenen Kontaktfelder.

Verwendbar sind alle Angaben, die ein User in seinem Profil angibt bzw. angeben kann. Die Daten finden sich im Array und Template-Tag the_author_meta() wieder, siehe hierzu auch die offizielle Dokumentation von WordPress.

Jetzt soll das Ganze natürlich auch noch an das Theme angepasst werden. Dafür gibt es vie CSS natürlich unzählige Möglichkeiten. In der style.css findet sich für die Box bei mir folgender Code:

#post-author {
	display: block;
	background: #ececec;
	border: 1px solid #ccc;
	padding: 5px;
	margin-top: 25px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

#post-author img.avatar {
	float: left;
	margin: 0 10px 5px 0;
	padding: 3px;
	border: 1px solid #333;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

#post-author ul li {
	display: inline;
	margin-right: 20px;
}

Das Endergebnis gibt es hier unterhalb des Artikels zu sehen. Viel Spaß beim Nachmachen ;)

Und bei einem Blog mit mehreren Autoren lohnt sich diese Geschichte natürlich mehr, als in einem Singleuser-Blog wie diesem hier ;)

Ergänzung: Eben habe ich festgestellt, dass das Theme “TwentyTen”, welches seit WP 3.0 Standard ist, eine solche Infobox bereits enthält. Die wird jedoch nur dann angezeigt, wenn der Artikelautor das Beschreibungsfeld (Description) in seinem Profil ausgefüllt hat.

Keep it Country, Markus

7 Kommentare

  1. Pascal Birchler

    Hallo Markus

    Danke für die Erwähnung! Hast das ja gleich super umgesetzt ;-)

    Ein kleiner Tipp noch: Du kannst mehrere Kontaktmethoden auf einmal hinzufügen.

    function wpm_add_contactmethods( $contactmethods ) {
     // ICQ hinzufügen
     $contactmethods['icq'] = 'ICQ';
    
    // Skype hinzufügen
     $contactmethods['skype'] = 'Skype';
    
     // Twitter hinzufügen
     $contactmethods['twitter'] = 'Twitter';
    
     return $contactmethods;
    }
    add_filter('user_contactmethods','wpm_add_contactmethods',10,1);

    Grüsse
    Pascal

    Antworten
    1. Markus (Beitrag Autor)

      Danke für den Tipp Pascal, weniger ist eben mehr. Besonders beim Code :)

      Antworten
  2. Pingback: Bottrop - Blog - 23 Aug 2010

  3. Pingback: Autoren-Infos aus der Datenbank » Cowboy´s Linux-Blog

  4. Pingback: Buttons ohne Plugins » Cowboy of Bottrop

  5. mausi

    hallo, danke, genau das hat mein kollege gesucht für ein linktausch blog mit kontakt zum schreiber, echt stark mit icq, super

    gruss mausi

    Antworten
  6. Pingback: Autoren-Infos aus der Datenbank | Cowboy of Bottrop

Schreiben Sie einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

;) 
:) 
:D 
:( 
:/ 
:p 
:o 
:lol: 
:roll: 
:angry: 
:smoke: 
:mrgreen: 
:silence: 
:blush: 
:kiss: 
mehr...