Bonjour,
Je suis en train de modifier le code du plugin glossaire interne afin de l'adapter à ce que je souhaite, celui du couteau suisse étant trop complexe pour moi à ce moment.
Je fais une jointure sur 3 tables afin d'afficher automatiquement une url au mot clé du glossaire spécifique. Malheureusement, les pages en local mettent 6 à 7 secondes à se calculer. Où ais je bien pu faire une erreur dans le code sachant que je fais cela à l'aveugle ne sachant pas quel code mettre pour afficher les résultats de la requête SQL et ainsi, voir si cela retourne quelque chose. Je teste mes requêtes via phpMyAdmin, c'est tout.
Voici le code modifié et simplifié :
function lier_au_glossaire($texte)
{
// le code que je voudrai est le suivant mais il ne fonctionne pas
//$r = sql_select("SELECT spip_mots.titre, spip_syndic.url_site FROM spip_mots JOIN spip_mots_syndic JOIN spip_syndic ON spip_mots.id_mot=spip_mots_syndic.id_mot AND spip_mots_syndic.id_syndic=spip_syndic.id_syndic WHERE spip_mots.id_groupe=5");
// j'utilise à defaut le suivant pour commencer
// le but est de recuperer les titres des mots cles qui sont associes a un site via une jointure qui passe par :
// spip_mots.id_mot=spip_mots_syndic.id_mot et spip_mots_syndic.id_syndic=spip_syndic.id_syndic
// je suppose que c'est un cela qui est fait dans la page qui presente un mot cle et qui affiche automatiquement le site associe
$r = spip_query("SELECT spip_mots.titre, spip_syndic.url_site FROM spip_mots JOIN spip_mots_syndic JOIN spip_syndic WHERE spip_mots.id_groupe=5");
while($o = spip_fetch_array($r))
{
$texte = first_replace("$o[titre]","<a href="\.$o[url_site].\" title=\"Adresse du site de cet auteur : "\.$o[url_site]." \">$o[titre]</a>",$texte);
}
for($i=0;$i<sizeof($tagMatches[0]);$i++)
{
$texte= first_replace ($replace,$tagMatches[0][$i], $texte);
}
return $texte;
}
?>
\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_
Jean-Philippe Guihard
Cadre Rééducateur
Association Hospitalière de Bretagne
22110 Plouguernével
02 96 57 10 32
<http://fureurdunoir.free.fr/>