Puh, das ist eigentlich zu viel für einen Kommentar. Ich schreibe bei Gelegenheit mal einen Text bei uns dazu.
Zunächst: Unser Autorenprofil sieht so aus.
Ci-Jou - Das etwas andere Online-Magazin
Um ein Autorenprofil wie bei uns anzulegen, ist folgendes zu tun:
(Bitte unbedingt vorher von allen zu ändernden phps Sicherungskopien anlegen! Ich garantiere nicht, dass es klappt. Bei uns hat es funktioniert und wir arbeiten mit wp 2.2.3 ACHTUNG! Den Code von hier erst in einen Editor und dann in die phps kopieren!)
Benötigtes Plugin: Cimy User Extra Fields
Cimy herunterladen und aktivieren.
Wenn man das Autorenprofil um ein Foto ergänzen möchte, den wordpress-code wie folgt ändern:
Im Ordner wp-content einen Unterordner anlegen, der Cimy_User_Extra_Fields heißt.
In der php <wp_dir>/wp-admin/user-edit.php ändern: (n.76 in WP 2.2.1):
<form name="profile" id="your-profile" action="user-edit.php" method="post">
in:
<form name="profile" id="your-profile" action="user-edit.php" method="post" enctype="multipart/form-data">
In der php <wp_dir>/wp-admin/profile.php ändern (n.24 in WP 2.2.1):
<form name="profile" id="your-profile" action="profile-update.php" method="post">
in:
<form name="profile" id="your-profile" action="profile-update.php" method="post" enctype="multipart/form-data">
In der php <wp_dir>/wp-login.php ändern (n.260 in WP 2.2.1):
<form name="registerform" id="registerform" action="wp-login.php?action=register" method="post">
in:
<form name="registerform" id="registerform" action="wp-login.php?action=register" method="post" enctype="multipart/form-data">
Um die Felder des Backend-Autorenprofils auf der Seite darstellen zu können, braucht man eine Autorenseite. Dazu Kopie von archive.php erstellen und umbenennen in author.php.
Um dem Archiv zu sagen, dass es jeweils die Daten des ausgesuchten Autors ziehen soll, muss der Anfang der author.php so aussehen:
<?php get_header(); ?>
<div id="content" class="narrowcolumn">
<!-- This sets the $curauth variable -->
<?php
if(isset($_GET['author_name'])) :
$curauth = get_userdatabylogin($author_name);
else :
$curauth = get_userdata(intval($author));
endif;
?>
Dann alles einfügen, was man darstellen möchte. Überschrift:
<h2 class="center">Autorenprofil von <?php echo $curauth->nickname; ?></h2>
Daten aus Cimy-Feldern ziehen:
<?php $value = get_cimyFieldValue($curauth->ID, 'ALTER'); ?><?php echo $value; ?>
Daten aus wordpress-Feldern ziehen:
<?php echo $curauth->user_description; ?>
Foto einfügen (Thumbnail außerhalb Loop):
<center><img src="<?php echo
cimy_get_thumb_path(get_cimyFieldValue($curauth->ID, 'FOTO')); ?>"
alt="Dieser Autor hat noch kein Foto eingestellt." /></center>
Bis auf „if this is author archiv“ alle ifs löschen (nicht zwingend notwendig, verschlankt aber den Code)
Ich hoffe, Ihr kommt damit klar.