User Tools

Site Tools


wordpress:template_autori

Template Autori

Per info su questo progetto: Gioxx (gioxx@gxware.org)

Template Autori integra le informazioni riguardo uno specifico autore di un blog, adatto quindi a progetti che richiedono la presenza di più autori per uno stesso prodotto editoriale professionale o amatoriale, creato specificatamente per Supporto Informatico ma replicabile su qualsiasi altro template Wordpress semplicemente modificando parte del codice.

Codice sorgente

Salvare il file e inserirlo nella cartella wp-content/themes/androida/ (o equivalente), non è necessario fare altro perché Wordpress prevede nativamente la presenza della pagina author.php e permette di utilizzarla per richiamare le informazioni specifiche di un account registrato.

author.php
<!--
Wordpress Androida
Template Autore 0.1
Gioxx - gioxx@gxware.org
-->
<?php?>
<?php get_header(); ?>
 
<div id="content">
 
	<!-- Riconoscimento dell'autore -->
	<?php
		$curauth = (isset($_GET['author_name'])) ? get_user_by('slug', $author_name) : get_userdata(intval($author));
	?>
 
	<div class="single" id="post-<?php the_ID(); ?>">
 
		<div class="title">
		<h2>A proposito di <?php echo $curauth->nickname; ?></h2>
		</div>
 
		<div class="cover">
		<div class="entry">
 
			<!-- utilizzo gravatar -->
			<?php
				$email = $curauth->user_email;
				if(function_exists('get_avatar')) { echo get_avatar($email, '90'); }
			?>
 
			<!-- informazioni sull'autore -->
			<p>
			<?php echo $curauth->nickname; ?> ha pubblicato finora <strong><?php echo get_usernumposts($curauth->ID); ?></strong> articoli.
				<ul>
					<li><strong>Nome</strong>: <?php echo $curauth->first_name; ?></li>
					<li><strong>Home Page</strong>: <a href="<?php echo $curauth->user_url; ?>"><?php echo $curauth->user_url; ?></a></li>
					<li><strong>Su di lui ...</strong>: <?php echo $curauth->user_description; ?></li>
				</ul>
			</p>
 
			<h2>Ultime pubblicazioni</h2>
 
			<ul>
 
				<!-- Lista articoli: data, articolo, categorie -->
				<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
					<li>
						<?php the_time('d/m/Y'); ?>: <a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link: <?php the_title(); ?>"><?php the_title(); ?></a>
					</li>
 
				<?php endwhile; else: ?>
					<p><?php _e('No posts by this author.'); ?></p>
 
				<?php endif; ?>
				<!-- Termine lista -->
 
			</ul>
 
			<div class="clear" style="margin-bottom: 20px;"></div>
 
			<p style="text-align: right;"><span style="color: #c0c0c0; font-size:10px;"><a href="http://dev.gxware.org/wiki/doku.php?id=wordpress:template_autori">Template Autori</a> realizzato da Gioxx<br />versione modificata per <a href="http://supportoinformatico.org">SupportoInformatico.org</a></span></p>
 
			<div class="clear" style="margin-bottom: 20px;"></div>
 
		</div>
 
		</div>
 
	</div>
 
</div>
 
<?php get_sidebar(); ?>
<?php get_footer(); ?>

Modifica al CSS

La pagina integra -come già detto- l'avatar caricato da Gravatar (basato quindi sulla e-mail dell'autore), per poterlo mostrare correttamente nella pagina (nel mio caso allineato a destra e con bordo da 2px) è necessario modificare il file CSS nella porzione dedicata al contenuto pagina:

img.avatar { float:right; border: 2px solid; }

Modifica al template delle Pubblicazioni

Volendo integrare la pagina autori all'interno di quella dedicata alle pubblicazioni, sarà possibile farlo semplicemente aggiungendo un nuovo blocco all'inizio della pagina. Al codice di Template Pubblicazioni ho semplicemente aggiunto:

<!-- gli autori -->
			<a name="autori"></a><img src="http://supportoinformatico.org/images/groupevent-128.png" align="right" /><h2 style="margin-left: 15px;">Gli autori</h2>
			<br /><p style="margin-left: 25px;">(i primi 5, in ordine di articoli pubblicati, fare clic sull'autore per vedere la scheda personale)</p>
			<ul>
				<?php
					//con RSS dedicato
					//wp_list_authors('show_fullname=1&optioncount=1&orderby=post_count&order=DESC&number=5&feed=RSS');
					//senza RSS dedicato
					wp_list_authors('show_fullname=1&optioncount=1&orderby=post_count&order=DESC&number=5');
				?>
			</ul>
 
			<div class="clear"></div>

da incollare prima di:

<!-- archivio pubblicazioni: limite a 15 -->
			<a name="ultime"></a><img src="http://supportoinformatico.org/images/edit-128.png" align="right" /><h2 style="margin-left: 15px;">Pubblicazioni recenti</h2>
...
..
.

Nel blocco degli autori ho commentato la stringa che produce la lista degli autori con feed RSS selettivo, ho preferito utilizzare quella senza. Basta commentare quella senza e togliere il commento a quella bloccata se si vuole anche il feed RSS di ciascun autore visibile in lista.

wordpress/template_autori.txt · Last modified: 2012/09/17 22:36 by Giovanni