Générateur de mots clés (tags) à partir de fichier html ou base de données

Soyez le premier à donner votre avis sur cette source.

Vue 7 987 fois - Téléchargée 518 fois

Description

Cette classe permet de générer des tags à partir d'une page HTML ou à partir d'une base de données.
Actuellement, il gère un système de cache. Ainsi, la génération des mots clés ne se fait pas à chaque visite de la page.
  • function __construct($n_tags) : Constructeur qui prend en paramètre le nombre de tags à générer
  • startAnalyseHTML() : Cette méthode sert de marque, le texte HTML qui suit cette méthode sera stocké
  • stopAnalyseHTML() : On récupère le texte HTML qui a été affiché depuis l'appel à startAnalyseHTML
  • cache_exists(), save_cache() et load_cache() s'occupe de la gestion du cache
  • createTags($content, $forced=false, $debug=false) : Cette fonction va générer les tags, $forced indique s'il faut oui ou non forcer la génération
  • render() : Cette fonction va afficher les tags trouvés
  • Getter et Setter pour modifier les attributs privés de la classe clTags


De plus, vous trouverez un fichier texte, ForbiddenWord.txt, qui contient une liste de mots qui seront ignorés et clTags.css, un fichier css contenant la mise en page des tags.

Le code source est documenté, si vous avez des questions n'hésitez pas à les poser.
Vous trouverez un exemple pour générer des tags à partir du code HTML, je n'ai pas mis d'exemple pour générer des tags depuis une base de données mais le principe est simple : appelez la fonction createTags avec en paramètre le texte de votre base de données.

Exemple en ligne : http://nicolasbeaudrot.0fees.net/download/tags/

Source / Exemple :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
		<title>Générateur de tags</title>
		<link rel="stylesheet" href="clTags.css"> 
	</head>
	<body>
	<?php
		include("clTag.php");
		$tag = new clTag(5);
		try{
			$tag->__set("nb_tags",10);
		}catch(Exception $e){
			echo $e->getMessage()."<br/>";
		}
		$tag->startAnalyseHTML();
	?>

             Texte ....

		<?php
			$tag->createTags($tag->stopAnalyseHTML());	
			$tag->render();
		?>
	</body>
</html>

Conclusion :


Bonne utilisation à tous.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_fabrice88
Messages postés
97
Date d'inscription
lundi 17 décembre 2001
Statut
Membre
Dernière intervention
7 août 2015
-
Bonjour,
ton script pourrait m'intéresser mais là sa ne fonctionne pas chez moi.

Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /homepages/40/d280878150/htdocs/tags/clTag.php on line 13
cs_Galip
Messages postés
8
Date d'inscription
vendredi 12 janvier 2007
Statut
Membre
Dernière intervention
21 avril 2009
-
Bonjour,

Le code utilise la POO qui est apparu dans PHP5, donc je pense que votre serveur ne supporte pas PHP5. Pour le savoir faîte un phpinfo() (voir les nombreux exemple sur le net pour l'utilisation de cette fonction)

Donc pour que le code marche il faudrait le porté dans une version qui n'utilise pas les classes.

Cordialement,
Galip
cs_fabrice88
Messages postés
97
Date d'inscription
lundi 17 décembre 2001
Statut
Membre
Dernière intervention
7 août 2015
-
Effectivement je suis en PHP Version 4.4.9. Dommage.
Orange73
Messages postés
1393
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011
-
Hello,

Euhhh... sa genere quel genre de tags ?
cs_Galip
Messages postés
8
Date d'inscription
vendredi 12 janvier 2007
Statut
Membre
Dernière intervention
21 avril 2009
-
Salut,

Le script analyse le texte et cherche les mots ayant le plus grand nombre d'occurrences. De plus, le script enlève la plupart des mots courants comme les mots de liaison, ... qui n'ont pas d'intérêt.
Par exemple, tu peux afficher les tags sur ta page, le script va chercher de quoi parle la page et afficher les mots clés, ça peut servir pour le référencement, pour l'utilisateur, ...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (cs_Galip)