Anleitungen

How-To: Autoren-Box am Ende eines Beitrags anzeigen

In diesem Beitrag möchten wir euch zeigen, wie ihr eine kleine Autoren-Box am Ende jedes Blog-Beitrags anzeigen lassen könnt. Wir werden hier weitgehend den Code vorstellen, den wir auch hier im Blog benutzen, erweitern diesen aber noch zusätzlich, dass wir auch die Kontaktinformationen eines jeden Autors ausgeben können.

Das Grundgerüst

Zuerst öffnen wir die single.php Datei unseres aktuellen Themes und suchen die Schleife (Loop), wo der jeweilige Beitrag ausgegeben wird und erstellen vor dem <?php endwhile; ?> einen Div-Container. Dies sieht dann in etwa so aus:

<?php if (have_posts()) : while (have_posts()) : the_post();?>
<div id="post-<?php the_ID(); ?>" <?php post_class() ?>>
<h2><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
<?php the_content(); ?>
</div>
<div id="post-author">
</div>
<?php endwhile; ?>

Für die Ausgabe der verschiedenen Informationen über den Beitrags-Autoren gibt es viele Funktionen in WordPress. Mit der Funktion get_avatar() können wir zum Beispiel das Gravatar des Autors anzeigen lassen, mit the_author() seinen öffentlichen Namen und mit the_author_meta() alle weiteren Benutzerinformationen wie E-Mail Adresse oder Website. Das sieht dann ungefähr so aus:

<div id="post-author">
<?php echo get_avatar(get_the_author_meta('user_email'), $size = 50, $default = '', $alt = 'Dies ist nur ein Gravatar'); ?>
<strong><?php the_author(); ?></strong>
<p><?php the_author_meta('description'); ?></p>
<ul>
<li>Website: <?php the_author_meta('user_url'); ?></li>
<li>AIM: <?php the_author_meta('aim'); ?></li>
</ul>
</div>

Das Grundgerüst

Das Grundgerüst

Gestaltung

Leider sieht es noch ganz und gar nicht nach einer Box aus, weswegen wir noch ein paar CSS-technische Handgriffe anwenden müssen. Dazu schreiben wir folgende, simple Zeilen, die unsere Autoren-Box gleich etwas verschönern, in die style.css Datei des Themes.

#post-author {
	display:block;
	background:#efefef;
	border:1px solid #ccc;
	padding:5px;
	margin-top:25px;
}

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

#post-author ul li {
	display:inline;
	margin-right:20px;
}
Die Autoren-Box mit CSS

Die Autoren-Box mit CSS

Twitternamen anzeigen

Wenn die Autoren eines Blogs auch auf Twitter anzutreffen sind, dann wäre es doch klasse, wenn man auch den Twitternamen anzeigen könnte. Dafür müssen wir uns durch einen eigenen Filter eine zusätzliche Kontaktmethode zu den Benutzerprofilen hinzufügen:

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

Dadurch können wir jetzt unseren Twitternamen in den Profileinstellungen erfassen und ihn dann in unserer Autoren-Box ausgeben.

Weitere Möglichkeiten

Die Autoren-Box könnte man noch etwas perfektionieren, indem man die Existenz der Funktionen überprüft und notfalls auf veraltete, in früheren WordPress-Versionen verwendete Funktionen zurückgreift. Ausserdem könnte man die Website oder den Twitternamen noch verlinken, aber das dürfte kein Problem sein.

15 Kommentare zu “How-To: Autoren-Box am Ende eines Beitrags anzeigen”

  1. Daniel am 23. August 2010 um 20:59 | Permalink

    Danke für die Beschreibung. Kannst Du mir auch sagen, wie ich HTML, oder besser nur bestimmte Tags, in der Beschreibung zulassen kann?

  2. Pascal Birchler am 23. August 2010 um 21:08 | Permalink

    Hallo Daniel

    Schau dir doch mal die PHP Funktion strip_tags() an (http://php.net/manual/de/function.strip-tags.php). Du kannst damit alle HTML-Tags entfernen und nur einzelne zulassen.

  3. Daniel am 23. August 2010 um 21:53 | Permalink

    Geht leichter: http://www.wprecipes.com/how-to-allow-html-in-user-profiles

    Hat bei mir funktioniert.

    • Pascal Birchler am 24. August 2010 um 09:54 | Permalink

      Also bei mir funktioniert das Einfügen von HTML auch ohne Filter-Manipulation. Aber jedem das seine :-)

      • Daniel am 24. August 2010 um 11:11 | Permalink

        Tja, bei mir leider nicht. Eigentlich möchte ich auch nur p, br, em, strong und das gibt es nicht her. Vielleicht hat ja jemand anderes noch eine Lösung?

  4. Joe am 24. August 2010 um 11:33 | Permalink

    HI Pascal,

    klasse Bericht, ich finde deine eigene Box super, kannste deine Anleitung etwas erweitern, und uns sagen, wie man Twitter und facebook reingebastelt kriegt ?

    Danke

    gruss

    aus La Palma

    Joe

    • Pascal Birchler am 24. August 2010 um 12:42 | Permalink

      Hallo Joe

      Wie man Twitter hinzufügt, ist ja oben beschrieben. Mit Facebook machst du das genau gleich (praktisch Copy/Paste). Die Ausgabe erfolgt dann mit .

  5. Chris am 25. August 2010 um 10:37 | Permalink

    Klasse Artikel und lässt sich damit leicht umsetzen.
    gelesen – probiert – funktioniert

  6. Fabian Künzel am 25. August 2010 um 19:30 | Permalink

    Hallo Pascal und den rest hier,

    intressanter Artikel =)
    Eventuell ist hierzu auch ein Artikel von mir Interessant, in dem ich erklär wie man leicht die Profilfelder bzw. Angaben erweitert bzw, neue hinzufügt um seine Autorenseiten oder auch Autoren Boxen um Felder zu erweitern, die im WordPress Standart nicht vorkommen.

    the_author_meta: Profil Angaben erweitern

  7. Alois am 26. August 2010 um 12:06 | Permalink

    Hallo Pascal,

    funktioniert das wegen der veralteten Funktionen in WordPress auch mit älteren oder nur mit 3.0?

    Lois

    • Pascal Birchler am 26. August 2010 um 20:12 | Permalink

      Ich verstehe nicht ganz? Also die Funktion the_author_meta() gibt es seit WordPress 2.8, get_avatar() seit 2.5, die anderen schon länger.

  8. Katrin am 26. August 2010 um 16:07 | Permalink

    sehr guter und verständlicher artikel, dankeschön!

    liebe grüße
    katrin

  9. Nico am 28. September 2010 um 21:17 | Permalink

    Vielen Dank für diese ausführliche Anleitung – ich spiele schon länger mit dem Gedanken so eine Box für Gastautoren zu integrieren und so wie sich das liest lässt es sich ja recht einfach umsetzen. Danke!

  10. Michael Schröder am 9. Mai 2011 um 20:10 | Permalink

    Hallo Pascal!, vielen Dank für die sehr gute und äußerst hilfreiche Anleitung!

    Die Autorenbox hatte uns noch zur Verbesserung der Kontaktaufnahme der Immobilien Experten auf unserer Experten Plattform gefehlt! Funktioniert einwandfrei!

    Danke nochmals und viele Grüsse!

    Dipl. Ing. Michael Schröder, Ihre-Immobilien-Experten.de

  11. Kai am 16. März 2012 um 08:40 | Permalink

    Sowas macht vor allem Sinn, wenn man ein Blog führt, wo viele verschiedene Authoren tätig sind. Schreibt man ausschließlich selbst, würde ich so ein Fenster in der Sidebar platzieren, wenn ich überhaupt will, dass jeder weiß, wer ich bin.

    Ich halte es da eher so, dass ich lieber anonym bleibe und mit meinen Artikeln nur die Basis für Diskussion liefere

5 Pingbacks

Hinterlasse eine Antwort

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

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>