Quelle extension météo ?

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

  • Quelle extension météo ?

    Bonjour,
    Les utilisateurs de mon site doivent indiquer leur localisation pour s'inscrire.

    Je recherche une extension météo où je puisse modifier l'entrée pour y affecter la localisation indiquée dans la fiche de l'utilisateur.

    J'ai testé plusieurs extensions je n'ai pas (pour le moment) trouvé une extension où je localise le point d'entrée de la localisation. (Le plus souvent ces extensions font appel au WOEID Yahoo, qui est unique)

    Quelqu'un a-t-il une idée du module que je pourrai utiliser ?

    Cordialement.

    Eric

  • #2
    Re : Quelle extension météo ?

    Bonjour Eric,

    Vaste sujet. Il n'est pas évident de faire le lien entre une localisation et le code utilisé par les fournisseurs de météo.
    Si tes utilisateurs sont tous en France, tu pourrais utiliser Météo-France. Mais le code utilisé est le code INSEE de la commune et non le code postal.
    Il doit être possible de le trouver avec cette API : https://public.opendatasoft.com/expl...flg=fr&q=77810 ou https://api.gouv.fr/api/api-geo.html...s/get_communes, mais je n'ai pas approfondi.
    Tu peux t'inspirer du module météo de RobertG https://www.joomxtensions.com/module-meteo-france.html
    en remplaçant le code commune par les infos de tes utilisateurs.

    voir aussi cette discussion : https://forum.joomla.fr/showthread.php?221374
    Dernière édition par lomart à 11/08/2017, 11h49
    UP, le plugin universel à découvrir sur https//up.lomart.fr
    bgMax
    , AdminOrder, MetaData, Zoom, ArtPlug, Custom, Memo, Filter, ... sur http://lomart.fr/extensions

    Commentaire


    • #3
      Re : Quelle extension météo ?

      Bonjour Lomart,
      Merci beaucoup de ton aide.

      J'ai regardé un peu comment étaient faites ces extensions.
      J'en ai essayé plusieurs pour regarder comment elles se configurent.

      Certaines fonctionnent en indiquant le nom de la ville.
      L'idée serait donc, de récupérer le nom de la ville de l’utilisateur (ça c'est pas trop compliqué) d'en faire une variable, puis d'injecter la valeur de cette variable à la place du nom que l'on saisi dans le module au moment de sa configuration.

      Le premier souci est de trouver la bonne extension, genre l'API Yahoo, mais Yahoo identifie la localisation par une clé. Du coup elle est unique et ne fonctionne que pour une seul lieu.
      Je sais que l'on peut trouver la clé grâce au nom de le ville, je cherche aussi de ce côté, mais j'ai noté un souci probable, c'est quand il y a dans le monde plusieurs villes qui portent le même nom. Donc, peut-être par le code postal.... Je cherche.

      Cordialement.

      Eric

      Commentaire


      • #4
        Re : Quelle extension météo ?

        Bonjour,

        On va encore dire que je vends ma sauce, mais, j'y vais.

        Donc, au niveau du code postal, cela ne fonctionne pas non plus, car, dans mon cas, nous avons 10 communes avec le même code postal (95450).

        Au niveau de la recherche "woeid", j'ai repris le code proposé par Yahoo dans mon plugin associé au module simple météo (je mets le lien pour que tu puisses voir comment c'est fait : https://www.conseilgouz.com/index.ph...e-simple-meteo)
        Code PHP:
            public function onUserBeforeDataValidation($form, &$data)
            {
                
        $nb 0;
                
        $params $data['params'];
                
        $city = (string)$params['ville'];
                
        $yql_query "select * from geo.places where text='".$city."'";
                
        $this->url $this->domain "?q=" urlencode($yql_query) . "&format=xml";
                if (
        extension_loaded('curl')) {
                    
        $getContentCode $this->getCurlContent($this->url);
                    if((
        $getContentCode != 200) and ($getContentCode != 302)) {
                        
        $getContentCode $this->getHttpContent($this->url$getContentCode);
                    }
                }
                if(
        $getContentCode == 200) {
                
                    
        $content utf8_encode($this->response);
                                
        $content str_replace('yweather:','yweather_'$content);
                                
        $content str_replace('geo:','geo_'$content);
                    
        // die(print_r($content));            
                    
                    
        $xml simplexml_load_string($content);
                    if (
        count($xml->results->place) <> 1) { // pas de weid ou plus d'un woeid
                        
        $params['woeid'] = 0// pas trouvé
                        
        if (count($xml->results->place) > 1
                            
        $params['woeid'] = "Veuillez pr&eacute;ciser votre demande, ".count($xml->results->place)." villes trouv&eacute;es avec ce nom.";
                        
                    } else {
                        
        $params['woeid'] = (string)$xml->results->place->woeid;
                    }
                    
        $data['params'] = $params;
                    
               } else {
                   
        $params['woeid'] = 'Erreur dans la recherche Yahoo!!!';
                   
        $data['params'] = $params;
               }

                return 
        true;
                
            } 
        En résumé, dans le formulaire du module, j'ai un "rule" mod_simple_meteo/models/rules/ville.php qui contrôle le nom de la ville (au travers du plugin) et récupère le woeid associé avec un petit message en cas d'erreur, de doublons,....et je stocke ce woeid dans les paramètres du module.

        Pascal

        PS: petite remarque: de temps en temps, Yahoo "rame" pas mal et cela peut bloquer votre site "un certain temps"....
        Dernière édition par pmleconte à 11/08/2017, 14h12
        If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

        Commentaire


        • #5
          Re : Quelle extension météo ?

          Merci Pascal (je crois que c'est ça)
          C'est très sympa de ta part.

          C'est toi qui a développé ces extensions ?

          Qui dit que tu vends ta sauce, moi je trouve plutôt très agréable le fait d'être aidé par des gens qui on l'expérience.

          Je regarde ce que tu as posté.

          Bien cordialement.

          Eric
          Dernière édition par Agrepe à 11/08/2017, 14h35

          Commentaire


          • #6
            Re : Quelle extension météo ?

            On va encore dire que je vends ma sauce, mais, j'y vais.
            Perso, je dirais : On va encore dire que je partage mon expérience, mais, j'y vais.

            Merci de le faire
            UP, le plugin universel à découvrir sur https//up.lomart.fr
            bgMax
            , AdminOrder, MetaData, Zoom, ArtPlug, Custom, Memo, Filter, ... sur http://lomart.fr/extensions

            Commentaire


            • #7
              Re : Quelle extension météo ?

              Tu as Raison Lomart, mais n'est-ce pas ce qui est important.
              Je suis formateur depuis 1989, donc je partage aussi beaucoup , mais quand on aime on ne compte pas.

              Commentaire


              • #8
                Re : Quelle extension météo ?

                Qui dit que tu vends ta sauce
                : c'est en rapport avec la discussion citée par Lomart où zebulon21 commençait à ne plus suivre nos "délires" de développeurs (https://forum.joomla.fr/showthread.p...=1#post1132053), mais, c'est une autre histoire...de toutes façons, mes modules sont gratuits

                Eric: comment entres-tu la localisation de tes utilisateurs ? ville ? coordonnées gps ? autre ? en cherchant un peu, j'ai vu que l'on peut aussi trouver le woeid avec les coordonnées gps sous la forme
                select woeid from geo.places where text="(49.11343, 1.90826)"
                , ce qui donnera mon woeid favori.

                Pour tester vos requêtes Yahoo, il y a la console Yahoo https://developer.yahoo.com/yql/console/ qui permet de voir le résultat de la requête
                Code:
                select * from weather.forecast where woeid in (select woeid from geo.places where text="(49.11343, 1.90826)")
                Pascal
                If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                Commentaire


                • #9
                  Re : Quelle extension météo ?

                  En fait, le utilisateurs indiquent leur localisation quand ils s'enregistrent.
                  (Il s'agit de EasySocial)

                  Donc, si je comprends bien, je récupère le nom de la ville. J'affecte ce nom à la variable $city ?

                  J'ai le CP et la ville.

                  Eric
                  Dernière édition par Agrepe à 11/08/2017, 14h59

                  Commentaire


                  • #10
                    Re : Quelle extension météo ?

                    Eric,

                    Au niveau de la recherche woeid de Yahoo, on peut soit entrer une ville, soit un code postal (dans ce cas, il faut le précéder de "France,"), soit, comme vu précédemment, des coordonnées longitude/latitude.

                    La ligne
                    count($xml->results->place)
                    permet de savoir le nombre de réponses à la requête.

                    Pascal
                    If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                    Commentaire


                    • #11
                      Re : Quelle extension météo ?

                      Je dois m'absenter, j'essaie de comprendre où placer le php du code que tu as déposé dans ta réponse.
                      Encore merci beaucoup.
                      Bien cordialement.
                      Eric

                      Commentaire

                      Annonce

                      Réduire
                      Aucune annonce pour le moment.

                      Partenaire de l'association

                      Réduire

                      Hébergeur Web PlanetHoster
                      Travaille ...
                      X