Bonjour à tous,
j'aurais besoin d'un petit coup de main si cela ne dérange personne.
En fait, j'ai créé une sorte d'espace membre sous WordPress à l'aide de 2 extensions :
Ce que je souhaiterai faire maintenant, c'est créer une nouvelle page permettant de récupérer, pour chacun des membres, ses articles publiés ainsi que ses commentaires postés.
Auriez-vous une petite idée ? J'ai pas mal cherché sur le web mais malheureusement je n'ai rien trouvé.
Merci d'avance pour vos réponses et bon week-end :)
<?php
if ( is_user_logged_in() ) {
global $current_user;
get_currentuserinfo();
$pagination = (get_query_var('paged')) ? get_query_var('paged') : 1; // Ajouter cette ligne pour dire à Wordpress qu'on est sur la page 1
query_posts('author='.$current_user->ID.'&posts_per_page=4&paged='.$pagination); // Ajouter paged=$pagination
?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<!-- Mon contenu -->
<?php
endwhile;
wp_pagenavi(); // Ajouter si le plugin wppagenavi est activé sinon mettre la pagination de wordpress par défaut
?>
<?php else: ?>
<p>Vous n'avez posé aucune question pour le moment !</p>
<?php endif; ?>
<?php wp_reset_query();
}
else {
echo 'Bonjour visiteur';
};
?>
Voila, j'espère que c'est assez clair ! Bonne chance :D
Tu dois faire un query post sur ton loop et préciser l'ID de l'auteur comme ça : <?php query_posts('author=1'); ?> pour récupérer les articles de l'auteur dont l'ID est 1. Après dans ton cas il faut que cet ID ce remplisse automatiquement en fonction de l'utilisateur connecté donc il faut utiliser la fonction : <?php get_currentuserinfo(); ?>.
<?php
global $current_user;
get_currentuserinfo();
query_posts('author='.$current_user->ID);
?>
Bon courage ;)
Bonjour spykrew07,
merci pour ta réponse mais je n'arrive pas à mettre en place ma page même avec tes explications.
Tu vas dire que je ne me suis pas foulé mais pourtant si, j'ai simplement une expérience médiocre :)
En fait je souhaiterai lister les articles de chaque membres sur une page spéciale mais je n'arrive pas à afficher les titres des articles et rien du tout en fait ... J'aimerai également afficher les commentaires.
Bon finalement j'ai trouvé :)
Voici ce que j'ai utilisé :
<?php
if ( is_user_logged_in() ) {
global $current_user;
get_currentuserinfo();
query_posts('author='.$current_user->ID.'&posts_per_page=4');
?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<!-- Mon contenu -->
<?php endwhile; else: ?>
<p>Vous n'avez posé aucune question pour le moment !</p>
<?php endif; ?>
<?php wp_reset_query();
}
else {
echo 'Bonjour visiteur';
};
?>
Tout ceci fonctionne parfaitement mais maintenant, je me retrouve avec un autre problème !
Vous l'aurez peut-être remarqué, j'ai choisi de n'afficher que 4 articles par page mais je n'arrive pas à créer une pagination.
Pouvez-vous m'aider :)
Installe le plugin http://wordpress.org/extend/plugins/wp-pagenavi/ et tu rajoutes apres ton endwhile <?php wp_pagenavi(); ?> et ta pagination apparaîtra comme par magie ;)
C'est bien ça le problème :(
J'ai déjà essayé avec Page-navi (déjà installé) et aussi avec la fonction WordPress de base mais rien. En fait, il m'affiche bien la navigation mais lorsque je clic sur la page 2 par exemple, et bien le contenu reste le même !
Salut spykrew07,
merci beaucoup, ça fonctionne à la perfection ! Par contre, je crois qu'il y avait un petit problème dans ton code.
Tu as écrit :
query_posts('author='.$current_user->ID.'&posts_per_page=4&paged=$pagination');
Et apparemment pour que ça fonctionne il fallait écrire :
query_posts('author='.$current_user->ID.'&posts_per_page=4&paged='.$pagination);
Je suis content, j'ai réussi à trouver l'erreur tout seul :) Peut-être devrais-tu éditer ton code pour aider la prochaine personne ayant le même souci.
Encore merci beaucoup pour ton aide !
Bonne soirée ;)