Contao-Camp 2024
Ergebnis 1 bis 5 von 5

Thema: Umkreissuche funktioniert nur teilweise

  1. #1
    Contao-Nutzer Avatar von Dillinja
    Registriert seit
    13.07.2009.
    Ort
    Dresden
    Beiträge
    110

    Standard Umkreissuche funktioniert nur teilweise

    Hallo liebe Leute,

    ich stelle gerade ein seltsames Verhalten bei MM und der Umkreissuche fest.

    Contao: 4.9.26
    MM: 2.2

    Die Umkreissuche erfolgt über mehrere Attribute (Lat., Lng.).
    LookUp-Suche ist Google Maps - API Key ist auch der von Maps.


    Bei manchen Anfragen verhält es sich eigenartig. Suche ich nach dem Ort, wird alles korrekt angezeigt. Bei der PLZ nicht. Auch nicht mit einem Umkreis, in dem viel mehr zu finden ist. Bei anderen Einträgen funktioniert dies wieder.

    Hier zu testen: https://www.dfw24.de/filialuebersicht

    Negativbeispiel: Stolpen funktioniert - 01833 nicht (auch nicht mit 20 km Umkreis)
    Positivbeispiel: Radeberg funktioniert - 01454 funktioniert

    Im ersten Beispiel kann ich im Debugmodus sehen, dass die Rückgabe leer ist.

    Die Daten sind auch alle korrekt hinterlegt. Kein Leerzeichen order irgendetwas komisches.

    Wo könnte ich denn noch ansetzen oder wie könnte ich das besser debuggen?

    Grüße
    Micha

  2. #2
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.712
    User beschenken
    Wunschliste

    Standard

    Die Geoauflösung bei PLZ liefert nicht immer was passendes zurück - häufig setzt Google dann den Suchmittelpunkt irgendwo in der Nähe von Hannover hin... - mach mal den Radius auf 1000km

    Hast Du Deutschland fix als Land eingetragen im BE?

    Du müsstest mal debuggen, was für eine Antwort Google liefert mit "01833"

    was steht in
    PHP-Code:

    dump
    (\sprintf($this->googleUrl '%s', \rawurlencode($query), $apiUrlParameter)); 
    bei https://github.com/MetaModels/filter...leMaps.php#L68

    bzw. was liefert Google mit der URL?

    Alternativ zusätzlich zu GMap noch OSM definieren - die Look-Ups werden der Reihe nach abgearbeitet und nach erstem Fund wird aufgehört.

  3. #3
    Contao-Nutzer Avatar von Dillinja
    Registriert seit
    13.07.2009.
    Ort
    Dresden
    Beiträge
    110

    Standard

    Hallo Zonky,

    danke für deine schnelle Antwort.

    Sobald ich Länder-Modus und Deutschland eingebe, wird gar nicht mehr gefiltert und es erscheinen alle Einträge.

    Eine Range auf 1000 km funktioniert auch nicht, es wird dort weiterhin nichts angezeigt.

    Aus dem Dump kann ich leider nichts lesen, da es einen Fehler gibt, sobald ich dies im Debug-Modus tun möchte. Undefined template variable: googleUrl

    Ich habs ins Template der Map gesetzt?

    Code:
    if (\Contao\System::getContainer()->get('kernel')->isDebug()) {
        //dump($this->data);
        dump(\sprintf($this->googleUrl . '%s', \rawurlencode($query), $apiUrlParameter));  
    }

  4. #4
    Contao-Urgestein Avatar von zonky
    Registriert seit
    19.03.2010.
    Ort
    Berlin, Rdf
    Beiträge
    9.712
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Dillinja Beitrag anzeigen
    Ich habs ins Template der Map gesetzt?
    da gehört das nicht hin - wie geschrieben, in die Datei einfügen und Dev-Modus anmachen

    PHP-Code:
    // src/FilterHelper/GoogleMaps.php

            
    $apiUrlParameter $apiToken '&key=' $apiToken '';
    dump(\sprintf($this->googleUrl '%s', \rawurlencode($query), $apiUrlParameter));
            
    $request->send(\sprintf($this->googleUrl '%s', \rawurlencode($query), $apiUrlParameter)); 
    und dann die URL aus Dump im Browser aufrufen - ggf. mir mal als PM zusenden

  5. #5
    Contao-Nutzer Avatar von Dillinja
    Registriert seit
    13.07.2009.
    Ort
    Dresden
    Beiträge
    110

    Standard

    die erste Fehlerausgabe war: API keys with referer restrictions cannot be used with this API.

    dabei hatte ich den Länder-Modus im Filter gesetzt und auf Deutschland gestellt.

    Ich habe einen neuen Schlüssel erzeugt und die Geocoding API sowie Geolocation API des Schlüssels aktiviert und von HTTP Restrictions auf IP Restrictions geändert.

    Funktioniert nun. Danke ;-)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •