- Codice: Seleziona tutto
add_filter('user_contactmethods','hide_profile_fields',10,1);
function hide_profile_fields( $contactmethods ) {
unset($contactmethods['aim']);
unset($contactmethods['jabber']);
unset($contactmethods['yim']);
return $contactmethods;
}
function my_new_contactmethods( $contactmethods ) {
$contactmethods['twitter'] = 'Twitter <em>(nome senza @)</em>';
$contactmethods['facebook'] = 'Facebook <em>(nome contatto)</em>';
$contactmethods['linkedin'] = 'LinkedIn <br /><em>(nome profilo pubblico)</em>';
return $contactmethods;
}
add_filter('user_contactmethods','my_new_contactmethods',10,1);
In questo modo ho eliminato Jabber, Yim e aim e aggiunto Twitter, Facebook e linkedin:
Successivamente ho aggiunto questa funzione:
- Codice: Seleziona tutto
function contributors() {
global $wpdb;
$authors = $wpdb->get_results("SELECT ID, user_nicename from $wpdb->users WHERE display_name <> 'admin' ORDER BY display_name");
foreach ($authors as $author ) {
echo "<li>";
echo "<a href=\"".get_bloginfo('url')."/author/";
the_author_meta('user_nicename', $author->ID);
echo "/\">";
echo get_avatar($author->ID);
echo "</a>";
echo '<div>';
echo "<a href=\"".get_bloginfo('url')."/author/";
the_author_meta('user_nicename', $author->ID);
echo "/\">";
the_author_meta('display_name', $author->ID);
echo "</a>";
echo "<br />";
echo "SitoWeb: <a href=\"";
the_author_meta('user_url', $author->ID);
echo "/\" target='_blank'>";
the_author_meta('user_url', $author->ID);
echo "</a>";
echo "<br />";
echo "Twitter: <a href=\"http://twitter.com/";
the_author_meta('twitter', $author->ID);
echo "\" target='_blank'>";
the_author_meta('twitter', $author->ID);
echo "</a>";
echo "<br />";
echo "<a href=\"".get_bloginfo('url')."/author/";
the_author_meta('user_nicename', $author->ID);
echo "/\">Visita il Profilo di ";
the_author_meta('display_name', $author->ID);
echo "</a>";
echo "</div>";
echo "</li>";
}
}]
Ho creato una nuova pagina e richiamato la funzione in questo modo:
- Codice: Seleziona tutto
<?php
/*
Template Name: Iscritti
*/
get_header(); ?>
<div id="content" class="narrowcolumn">
<div class="post page" id="post-<?php the_ID(); ?>">
<h2 class="title"><?php the_title(); ?></h2>
<div class="entry">
<div id="authorlist"><ul><?php contributors(); ?></ul></div>
</div>
</div>
</div>
<?php get_sidebar('iscritti'); ?>
<?php get_footer('iscritti'); ?>
E fin qui tutto bene, il problema emerge quando tento di impaginare la lista. In pratica vorrei 10 utenti per pagina ma non so proprio da che parte farmi ..... qualcuno può aiutarmi ?
Girando in rete ci sono poche soluzione e spiegate male ma penso che la strada giusta sia lavorare con <strong>$wpdb->get_results()</strong>. Una cosa tipo questa:
- Codice: Seleziona tutto
$authors_per_page = 10;
$page = isset( $_GET['cpage'] ) ? abs( (int) $_GET['cpage'] ) : 1;
echo paginate_links( array(
'base' => add_query_arg( 'cpage', '%#%' ),
'format' => '',
'prev_text' => __('«'),
'next_text' => __('»'),
'total' => ceil($total / $authors_per_page),
'current' => $page
));
Ma poi come si richiama la funzione ? spero in un vostro aiuto .....