- Statut : non résolu
- Ce sujet contient 7 réponses, 4 participants et a été mis à jour pour la dernière fois par lupus canis, le il y a 15 années et 9 mois.
-
AuteurMessages
-
26 janvier 2009 à 22 h 16 min #466723
Bonjour,
Ma configuration WP actuelle
– Version de WordPress : v 2.7
– Thème utilisé : le mien, celui que je suis entrain de faire
– Plugins en place : limit-post
– Nom de l’hebergeur : localhost 😉
– Adresse du site : http://localhost mdrProblème(s) rencontré(s) :
Bonjour je fais appel à votre aide car j’ai un petit problème sur le dev d’un thème que je suis entrain de faire pour la communauté 😉 !!!
Alors voilà, mon problème est très simple, je voudrais récupérer la date et le début des trois derniers article du blog pour les afficher à un endroit spécifique, regardez ci dessous, ca vous parleras plus :
<div class="r_sidebar">
<h3>Dernières <span class="red">actualités…</span></h3>
<div class="Rnews">
<b><?php the_time('j F, Y');?></b>
<p><?php $recent = new WP_Query("showposts=3"); while($recent->have_posts()) : $recent->the_post();?></p>
<?php the_content_limit(120, "");?>
<?php endwhile; ?>
et voici le résultat du code en image :
Maintenant je pense que vous comprenez mieux mon problème ?!!!
En fait on voit bien qu’il y a un paragraphe de trop ainsi que la date qui se place mal en apparaissant qu’une seule fois alors qu’elle devrait apparaitre deux fois vu qu’il y a deux articles , pourriez vous m’helper svp ???
30 janvier 2009 à 0 h 31 min #658962petit up, j’ai été m’inspirer sur le codex mais je n’arrive à rien, faut dire qu’en php jsui plutot une bille !!! 😉
30 janvier 2009 à 2 h 19 min #658963Ben non c’est normal tu affiches la date avant d’entrer dans la boucle. Mets la après while($recent->have_posts()) :
Par ailleurs tu affiches la date du jour, pas la date du post.
30 janvier 2009 à 2 h 57 min #658964merci à toi de bien vouloir prendre de temps pour me venir en aide 😉 aussi bien sur ce post que sur l’autre !!!
Donc je viens de tenter ce que tu m’as indiquer en faisant ceci :
have_posts()) : comment_date(‘j F, Y’); $recent->the_post();?>
et voici ce que j’obtient
30 janvier 2009 à 13 h 42 min #658965Utilise plutôt des accolades pour ton code PHP (une petite révision des bases de la syntaxe, ça ne fait pas de mal).
(Et c’est un piteux développeur php qui te parle 😆 )have_posts()) { the_date(‘j F, Y’); $recent->the_post(); } ?>
the_date(), pas comment_date()
1 février 2009 à 6 h 37 min #658966merci à toi Comme une image, je suis désolé mais je débute en php, le peu de choses que je connais c’est ce que j’apprends en autodidacte donc la syntaxe autodidacte n’est surement pas la meilleures, j’avoue 😉 !!!
Par contre la modif avec les accolades me permet d’enlever le si je comprend bien, rectifie moi si je me trompe !!!
Cette modif concerne évidemment la syntaxe du code mais n’as aucun effet sur mon problème, le résultat est toujours idem, la premier bloc de div ne contient que la date de l’article, et le second div un extrait de l’article, en l’occurrence le seul changement est qu’il ne m’affiche plus qu’un seul article au lieu de 3 comme demandé !!!
De l’aide svp car je commence à m’arracher les cheveux avec cette fonctions php… 😉
1 février 2009 à 11 h 14 min #658967Il doit nous manquer un bout de code, pour comprendre ton problème.
Peux-tu nous présenter l’extrait correspondant à l’affichage complet de cette zone de ta page ?
(tu parles du endwhile, où était-il ?)1 février 2009 à 11 h 48 min #658968Je vais essayer de répondre, sans te répondre, car je ne connais pas le langage PHP.
J’ai programmé sur d’autres langages, et j’ai pas trop envie, à mon age, de réapprendre autre chose.
On m’a toujours dit, que si la programmation à l’arrache finissait par fonctionner, elle ne permettait ni d’apprendre, ni de comprendre réellement le code.
Donc, tu devrais faire un organigramme et structurer ton code pour le comprendre.
Sur ton problème, ca devrait donner quelque chose comme ça :commentaire : récupération des 3 (?) premiers articles et affichage
affichage : titres ou autres du paragraphe ou du widget
récupération du nombre d’articles
vérification de la présence de 3 articles, sinon boucler sur le nombre minimum trouvé
début d’une boucle par X
extraction de la date => affichage (ou passage en variable texte)
extraction des X premiers mots => affichage (ou passage en variable texte)
fin de boucle
fin de vérif du nombre d’articlesJe ne sais pas comment se structure le PHP, mais on devrait pas être loin.
Si tu obtiens un affichage vide, c’est que ta boucle n’est pas cadrée ou qu’il est nécessaire d’y inclure une condition qui vérifie la présence d’un texte « non vide ». -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.