Bonjour,
Je suis en ce moment en train de créer un système de news, dans quelques articles, j'ai beaucoup de caractères et ça fait vraiment encombrant pour la page.
Donc j'aimerai savoir comment mettre l'article avec un nombre de caractères limités sur la page d'accueil avec un "Lire la suite" pour lier vers la page des news.

Merci,
Cruwp.

7 réponses


agrafik
Réponse acceptée

Salut,

Je voudrais pas te rediriger autre part que Grafikart, mais avant Grafikart tu aurais du visiter le site du Zero qui t'apprend les bases du PHP et qui t'aide à comprendre les tutos. Grafikart. Voici ce que j'ai trouvé:
http://www.siteduzero.com/forum-83-424197-p1-lire-la-suite.html
Si tu as des soucis, regarde dans la navigation de gauche et coche MySQL/PHP pour voir les bases de PHP ;) .

Benoit
Réponse acceptée

Bonjour, j'ai plusieurs solutions a te proposer, une en php une autre en javascript:
En javascript il existe un plugin jquery qui s'appelle read more que j'ai utilisé pendent un moment, et qui permet tout simplement de couper ton texte si celui ci excède un certain nombre de caractère, et qui fait apparaitre a la place un lien qui permet de dévoiler la suite. Pour faire ce que tu veux en faire il faudrait l'éditer et lui faire aller sur une autre page, ce plugin est très simple a comprendre grace a sa doc (en anglais mais qui est remplis de plein d'exemple).
Ma deuxieme solution est en php et m'est venue grace au plugin dont je t'ai parler plus haut, il suffit d'utiliser une fonction pour conter les caractères de ta chaine, et de supprimer ceux qui sont en trop par exemple tu veux qu'il n'y est que 200 caractères qui s'affiche donc tu conte le nombre de caractère grace a la fonction php (que tu trouvera en cherchant sur le net ou sur le site du zéro), tu la stocke dans une variable, tu soustrais 200, tu stoque ce nouveau nombre dans une variable et tu soustrait a ton texte le nombre de caractère que tu viens de trouver et voilà, il manque plus qu'a afficher a la fin un petit lien vers ta page pour afficher tout l'article.

J'espère que sa t'aura aidée un peu

bag
Réponse acceptée

Salut voici un code qui te sera utile :p

$extrait=substr($data"question"],0,100);
    echo "$extrait <a href=\"reponse.php?id={$data"id"]}\">[Lire la suite]</a>";

"100" est le nombre de caractère a afficher .

Hardware
Réponse acceptée
<?php
if(strlen($news->contenu) > 1000)
{
        $news->contenu = substr($news->contenu,0,1000);
        $space = strrpos($news->contenu, ' ');
        $news->contenu = substr($news->contenu, 0, $space) . '<span><a href="blog/post/' . $news->id . '">Lire la suite...</a></span>';
        echo nl2br($news->contenu);
}
else
{
        echo nl2br($news->contenu);
}
?>

J'utilise ce bout de code pour ajouter un lien "Lire la suite" en fonction du nombre de caractères de l'article demandé.

++

La question à été posée ici: http://www.grafikart.fr/questions/63
Si tu veux un exemple pour l'intégration, j'avais un bug j'ai donc demander de l'aide, si tu veux voir le code: http://www.grafikart.fr/questions/288

Salut,
Ou au pire tu fais ta requete : "SELECT id,LEFT(contenu, 100) as contenu,url FROM ta_table"
Et à l'affichage :
-> <?php echo $data'contenu']; ?>... | <a href="<?php echo $data'url'] ?>">Lire la suite</a>

Voilà :p ^^

Cruwp
Auteur

Merci à vous !
C'est plus clair pour moi.