Accueil : premier billet entier, amorce pour les suivants
Objectif : afficher le premier billet de la première page de l'accueil en entier et les 400 premiers caractères pour les autres billets. (Comme sur le présent blog.)
Vous pouvez télécharger le fichier en pièce jointe (j'attends de voir s'il ne serait pas possible de simplifier tout ça et le renommer home.html puis le placer dans le répertoire de votre thème ou procéder vous-même au changement suivant :
Dans le fichier home.html, remplacer :
<tpl:EntryIf extended="1">
<div class="post-content">{{tpl:EntryExcerpt}}</div>
<p class="read-it"><a href="{{tpl:EntryURL}}"
title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
reading}}</a>...</p>
</tpl:EntryIf>
<!-- # Entry without excerpt -->
<tpl:EntryIf extended="0">
<div class="post-content">{{tpl:EntryContent}}</div>
</tpl:EntryIf>
Par :
<!-- # si on est sur le premier billet et qu'il n'a pas d'extrait -->
<tpl:EntryIf first="1" extended="0">
<!-- premier billet de la premiere page -->
<tpl:PaginationIf start="1">
<div class="post-content">{{tpl:EntryContent}}</div>
</tpl:PaginationIf>
<!-- premier billet sans extrait d'une page suivante -->
<tpl:PaginationIf start="0">
<div class="post-content"><p>{{tpl:EntryContent
remove_html="1" cut_string="400"}} (...) <span class="read-it"><a href="{{tpl:EntryURL}}"
title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
reading}}</a>...</span></p></div>
<p class="read-it"><a href="{{tpl:EntryURL}}"
title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
reading}}</a>...</p>
</tpl:PaginationIf>
</tpl:EntryIf>
<!-- si on est sur le premier billet et qu'il a un extrait -->
<tpl:EntryIf first="1" extended="1">
<!-- premier billet de la premiere page -->
<tpl:PaginationIf start="1">
<div class="post-content">{{tpl:EntryExcerpt}}{{tpl:EntryContent}}</div>
</tpl:PaginationIf>
<!-- premier billet avec extrait d'une page suivante -->
<tpl:PaginationIf start="0">
<div class="post-content"><p>{{tpl:EntryExcerpt
remove_html="1" cut_string="400"}} (...) <span class="read-it"><a href="{{tpl:EntryURL}}"
title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
reading}}</a>...</span></p></div>
<p class="read-it"><a href="{{tpl:EntryURL}}"
title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
reading}}</a>...</p>
</tpl:PaginationIf>
</tpl:EntryIf>
<!-- # si on n'est pas sur le premier billet -->
<tpl:EntryIf first="0" extended="0">
<div class="post-content"><p>{{tpl:EntryContent remove_html="1" cut_string="400"}} (...) <span
class="read-it"><a href="{{tpl:EntryURL}}"
title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
reading}}</a>...</span></p></div>
</tpl:EntryIf>
<tpl:EntryIf first="0" extended="1">
<div class="post-content"><p>{{tpl:EntryExcerpt remove_html="1" cut_string="400"}} (...) <span
class="read-it"><a href="{{tpl:EntryURL}}"
title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue
reading}}</a>...</span></p></div>
</tpl:EntryIf>
Commentaires
excellent !
moi qui deteste ecrire dans un Chapo ou dans l'extrait !
J'ai une photo pour chacun de mes billet sur la b4. La photo s'affiche bien sur sur le premier billet (le plus récente) mais elle ne s'affiche plus sur les autres billets (que je coupe à 400 ou à 1000)
Il y a t'il le moyen de conserver les photos et quelques lignes de texte quand même ou pas (je mets mes photos comme ceci : ((/images/pwifi.jpg||G))
Le paramètre
remove_html="1"supprime les balises html. Il te suffit donc de ne pas insérer ce paramètre.quelle rapidité ! heu...dois-je te remercier encore...? ben.... OUI ! :-)
Attention, enlever ce paramètre est d'usage délicat : si le nième caractère tombe au milieu d'une balise html elle sera coupée au beau milieu.
Bonsoir,
je voudrais savoir comment faire pour que le 1er billet soit également tronqué (j'ai réussi à régler à 100 caractères les autres billets) comme le sont tous les billets suivants.
Merci pour tout ce que tu fait pour nous, pauvres blogueurs, sur tes blogs et sur le forum.
Ah ben là c'est encore plus simple. Il suffit de retirer tout le début du code ci-dessus pour ne conserver qu'à partir de la ligne :
Et dans la portion qui suit supprimer les deux occurrences de
first="0"Merci beaucoup. Ca marche super bien (mais je n'en doutais pas)
Ah si, un petit problème que je viens de voir : le lien lire la suite qui devrait renvoyer sur l'article du blog d'où provient l'extrait ne marche pas, il renvoie sur la page d'accueil de mon blog.
Bizarre, non?
Tu as bien
{{tpl:EntryURL}}comme valeur pour le href du lire la suite ?Tu es géniale!! C'est exactement ça.
Par contre j'ai de nouveau l'url complète du lien vers le billets.
J'arrive pas à trouver quel bout de code il faut modifier ou enlever.
Merci à toi pour ton aide.
Euh... pourquoi ne veux-tu pas l'url complète ? (j'ai dû louper un épisode, désolée !)
Je ne veux pas qu'elle s'affiche entièrement. La elle est clairement lisible dans le billet à la suite de "Lire la Suite". Ca fait moche.
Rho, mais keske tu as fait comme betise ? ;)
Tu peux nous copier le code compris entre <div class="post-content"> et </div> qu'on le corrige ensemble ?
Je te mets le code entier :
<tpl:EntryIf extended="0">
<div class="post-content"><p>{{tpl:EntryContent remove_html="1" cut_string="150"}} (...) <span class="read-it"><a href="{{tpl:EntryURL}}" title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue reading}}</a>...</span></p></div></tpl:EntryIf>
<tpl:EntryIf extended="1">
<div class="post-content"><p>{{tpl:EntryExcerpt remove_html="1" cut_string="150"}} (...) <span class="read-it"><a href="{{tpl:EntryURL}}" title="{{tpl:lang Continue reading}} {{tpl:EntryTitle encode_html="1"}}">{{tpl:lang Continue reading}}</a>...</span></p></div></tpl:EntryIf>
Alors là je suis fichtrement perplesque : ce que tu indiques ne devrait en aucun cas produire l'effet d'afficher l'url à la place du texte Lire la suite !
Tu es sûr que ce code est bien celui présent en ligne (et non ton fichier sur ton disque dur ou celui d'un autre thème ou ...) ?
Oui oui je suis sur. C'est bien le même. D'ailleurs le cut-string est à 150, ce qui est ma valeur.
Si tu as été voir sur le Planet, tu verras que c'est pas méchant méchant, mais c'est moche, quoi. Je voudrais bien que cela saute.
J'ai un autre problème plu haut dans la page du home.html:
<tpl:EntryMetaData>
<tpl:MetaDataHeader><ul class="post-tags"></tpl:MetaDataHeader>
<li><a href=""></a></li>
<tpl:MetaDataFooter></ul></tpl:MetaDataFooter>
</tpl:EntryMetaData>
Dreamweaver m'annonce que les balises MetaDataHeader et MetaDataFooter sont invalides, car mal fermées ou chevauchantes. Or ce sont les balises du thème de départ, c'est un endroit que je n'ai absolument pas touché. Bizzare aussi, non?
Merci en tout cas de t'intéresser à mon cas.
Aaaaaaargh, mais Dreamweaver pour éditer ses fichiers de thème, c'est Le Mal ! :)
(tu peux m'envoyer une archive de ton thème que j'y regarde de plus près ? kozlika at free.fr, je ne te promets pas de le faire aujourd'hui mais je vais tacher de trouver un moment rapidement)
Je viens de l'envoyer il y a une minute.
A+
Ayé ! je le tiens. Ce n'est pas dans le html que se situe ton problème mais dans la feuille de style. A cause de cette règle, que je te conseille de supprimer (et faire remonter à son auteur) :
.post-content a[href^="http"]:after, #comments a[href^="http"]:after, #trackbacks a[href^="http"]:after { content: " ("attr(href)") "; color: #333; }