Comment afficher des articles similaires

Attention, depuis PHP 5.5.0, certaines extensions SQL sans doute utilisées dans ce tutoriel peuvent être obsolètes et seront supprimées dans le futur, vous devez donc adapter les codes! Exemples ici.
Nous allons voir dans ce petit tutoriel comment présenter aux internautes des articles similaires à la page consulté. Outre le faite de proposer des articles suceptibles d'intéréssées le lecteur, cela permet également de lier vos pages entre elles.

On ouvre le fichier page.php et on cherche la partie suivante :
while($affiche = mysql_fetch_array($page))
{
	$titre=$affiche['titre'];
	$description=$affiche['description'];
	$contenu=$affiche['texte'];
}
Dans cette boucle, on ajoute la variable correspondant aux catégories :
while($affiche = mysql_fetch_array($page))
{
	$titre=$affiche['titre'];
	$description=$affiche['description'];
	$contenu=$affiche['texte'];
	//Variable de la catégorie
	$id_categorie=$affiche['id_categorie'];
}
On descend tout en bas de la page et on cherche la ligne :
<?php include('footer.php');?>
On remplace par le code suivant :
<?php
$article_aleatoire = mysql_query("SELECT id,titre,id_categorie FROM CONTENU WHERE 
id_categorie='"
.mysql_real_escape_string($id_categorie)."' AND
id!='"
.mysql_real_escape_string($id_transmit)."' ORDER BY RAND() LIMIT 5"); //Si il y a quelque chose if(mysql_num_rows($article_aleatoire) != 0) { //on affiche les titres sous forme de liens echo '<ul>'; while($aleatoire = mysql_fetch_array($article_aleatoire)) { echo '<li>» <a title="'.$aleatoire['titre'].'" href="page.php?
id='
.$aleatoire['id'].'">'.$aleatoire['titre'].'</a></li>'; } echo '</ul>'; } include('footer.php'); ?>

Le code PHP va chercher les identifiants et les titres des articles de la même catégorie que l'article consulté tout en prenant soin de ne pas sélectionner l'article en cours et le tout de façon aléatoire avec une limite de 5 articles.

Si vous utilisez l'url rewriting, remplacez la ligne du code ci-dessus :
echo '<li>» <a title="'.$aleatoire['titre'].'" href="page.php?id='.$aleatoire['id'].'">
'
.$aleatoire['titre'].'</a></li>';
par :
echo '<li>» <a title="'.$aleatoire['titre'].'" href="'.OptimiseUrl($aleatoire['titre']).'
-'
.$aleatoire['id'].'.php">'.$aleatoire['titre'].'</a></li>';
Ce tutoriel est à présent finit et pour les étourdits, pensez à envoyer ce fichier modifié sur votre serveur !
Voir/déposer un commentaire (2) | Signaler un problème