Problème avec les accents et le moteur de recherche classique de Joomla

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Problème] Problème avec les accents et le moteur de recherche classique de Joomla

    Bonjour !

    J'utilise donc Joomla 1.6 et j'ai un problème avec le moteur de recherche standard de Joomla.

    En effet, celui-ci décide d'ignorer les accents et du coup ne trouve pas les mots accentués alors qu'il marche sans problème sur des mots sans accents.

    J'ai essayé de regarder dans le forum mais rien de pertinent n'est apparu, je trouve ça bizarre.

    Il y a forcément un problème d'encodage quelque part, j'ai essayé de faire des utf8 encode ou decode dans le fichier /components/com_search/models/search.php sur la variable $keyword mais rien n'y fait ...

    De plus, l'ajout de la définition du charset dans le template index.php de mon thème n'y change rien !

    Avez vous une idée ?

    Merci beaucoup

  • #2
    Re : Problème avec les accents et le moteur de recherche classique de Joomla

    Bonjour,
    étonnant, les données sont stockées depuis la 1.5 en utf8 sans encode donc les accents sont stockés tels quels (é et pas &eacute et pour SQL e, é, è, ê, ë, E etc. c'est la même chose.
    Sauf si tu as du contenu venant de copier/coller sauvage ou d'un site Joomla 1.0...
    Schtroumpfe toi le Schtroumpf t'aidera.
    Je ne schtroumpfe pas aux demandes de schtroumpf par MP.

    Commentaire


    • #3
      Re : Problème avec les accents et le moteur de recherche classique de Joomla

      Merci pour ta réponse !

      Même pas les données ont été intégrées via le back office classique, aucune injection de données en mode porc dans la base ...

      Et j'ai regardé, effectivement le html entities n'est pas utilisé pour enregistrer dans la base je vais essayer de voir si c'est l'encodage de mes tables sql qui dysfonctionne mais ça me semble bizarre vu que les bases on été crées proprement via une installation Joomla classique ...

      Bref, si quelqu'un d'autre a une idée ...

      Commentaire


      • #4
        Re : Problème avec les accents et le moteur de recherche classique de Joomla

        Salut,
        avec tout mon respect, GS, le moteur de recherche de base de j1.6 ou j1.7 est aussi dysfonctionel que celui de la 1.5 au niveau des accents.
        Dans un article, exemple avec :
        Lorem Ipsum est un générateur de faux textes aléatoires.
        Le texte généré est du pseudo latin et peut donner l'impression d'être du vrai texte. Le Théâtre des opérations ...
        Trouve "générateur" ou même "generateur" ou "théâtre"...
        sur une install de base.

        Ce qu'il serait intéressant de savoir, c'est comment le site joomla.fr a réglé le pb car la recherche avec accents y fonctionne correctement.

        Fly06 avait concocté une extension pour corriger le truc en 1.5, mais AFAIK il ne l'a pas updatée pour 1.6/1.7
        Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

        Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

        Commentaire


        • #5
          Re : Problème avec les accents et le moteur de recherche classique de Joomla

          Re,
          Trouve "générateur" ou même "generateur" ou "théâtre"...
          oui, c'est bien ce que je disais... mais pour moi ça veut dire que ça fonctionne bien

          J'ai compris que Bunnbunn a le problème inverse : ne trouve pas les mots accentués alors qu'il marche sans problème sur des mots sans accents.
          Schtroumpfe toi le Schtroumpf t'aidera.
          Je ne schtroumpfe pas aux demandes de schtroumpf par MP.

          Commentaire


          • #6
            Re : Problème avec les accents et le moteur de recherche classique de Joomla

            Ou alors je comprends mal, ou alors je pense que
            Trouve "générateur" ou même "generateur" ou "théâtre"...
            sur une install de base.
            était un brin d'ironie de la part de ghazal

            Commentaire


            • #7
              Re : Problème avec les accents et le moteur de recherche classique de Joomla

              Re,
              ah oui, tout faux... sauf pour "théâtre", la casse ne bloque pas la recherche.

              Après enquète la requête ramène bien les articles, mais après, le résultat est passé au filtre de searchHelper::checkNoHTML qui refait la vérif après avoir viré le code HTML de l'article. En effet si par exemple on cherche "href" la requête ramène tous les articles contenant un lien, et pas seulement les articles qui parlent de la balise href...
              Comme la comparaison à ce stade est une comparaison de chaîne, et plus de type base de données, elle échoue si les accents dans le texte et dans le mot clé ne sont pas identiques.

              Si tu ne fais pas un site sur le développement web, si tu ne vends pas des tables... bref si tu ne crains pas les faux positifs, tu peux essayer de fonctionner en virant cet appel au helper. Par exemple dans plugins/search/content/content.php :
              Code:
              $results = array();
              if (count($rows))
              {
              	foreach($rows as $row)
              	{
              		$new_row = array();
              		foreach($row AS $key => $article) {
              			 // if (searchHelper::checkNoHTML($article, $searchText, array('text', 'title', 'metadesc', 'metakey'))) {
              				$new_row[] = $article;
              			 // }
              		}
              		$results = array_merge($results, (array) $new_row);
              	}
              }
              return $results;
              Dernière édition par Grand Schtroumpf à 05/09/2011, 16h48
              Schtroumpfe toi le Schtroumpf t'aidera.
              Je ne schtroumpfe pas aux demandes de schtroumpf par MP.

              Commentaire


              • #8
                Re : Problème avec les accents et le moteur de recherche classique de Joomla

                Salut,
                moi aussi je mets mon bémol à mes affirmations.
                Par défaut, joomla en admin est en utf-8 dans les metas.
                En fait, c'est une question d'éditeur.
                La plupart colle des &eacute dans le code. Donc il faudrait soit en utiliser un qui soit paramétrable (no html entities) soit écrire directement en html sans htmlentities avec CodeMirror.
                Et ca marche.
                Je sais, pas évident pour les clients.

                Rectif : CKEditor permet de régler ce paramètre (htmlentities)
                http://joomlacode.org/gf/project/cke.../?action=index
                Mias je suppose que JCE le permet aussi.
                Dernière édition par ghazal à 06/09/2011, 14h43
                Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

                Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

                Commentaire

                Annonce

                Réduire
                1 sur 2 < >

                C'est [Réglé] et on n'en parle plus ?

                A quoi ça sert ?
                La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                Comment ajouter la mention [Réglé] à votre discussion ?
                1 - Aller sur votre discussion et éditer votre premier message :


                2 - Cliquer sur la liste déroulante Préfixe.

                3 - Choisir le préfixe [Réglé].


                4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                2 sur 2 < >

                Assistance au forum - Outil de publication d'infos de votre site

                Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                UTILISER À VOS PROPRES RISQUES :
                L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                Problèmes connus :
                FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                Installation :

                1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                Archive zip : https://github.com/AFUJ/FPA/zipball/master

                2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                et remplacer www. votresite .com par votre nom de domaine


                Exemples:
                Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                Télécharger le script fpa-fr.php dans: /public_html/
                Pour executer le script: http://www..com/fpa-fr.php

                Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                Télécharger le script fpa-fr.php dans: /public_html/cms/
                Pour executer le script: http://www..com/cms/fpa-fr.php

                En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                Voir plus
                Voir moins

                Partenaire de l'association

                Réduire

                Hébergeur Web PlanetHoster
                Travaille ...
                X