2016-12-30 3 views

答えて

0

「既定の場所」を定義して、ユーザーの現在の場所について話していますか?またはあなたが決めた場所?

もしユーザーのデフォルトの場所であれば、javascriptを使用する必要があります(このロジックはクライアント側で行う必要があるため、サーバー側で実行する場合はMaxMind GeoLocateを使用できますが、これは別のトピックです)。

この例を確認して、このようなjavascriptを追加して、Kenticoで生成しているマップをポイントしてください。

https://developers.google.com/maps/documentation/javascript/geolocation

+0

デフォルトでは、WebパーツのデフォルトLat/Lonを意味します。 – anonymouse

0

あなたは「デフォルトの緯度」と「デフォルト経度」欄に記入しましたし、チェックボックスを、ピンが自動的に表示されます「レコードが見つからない場合は非表示」をチェックしましたと仮定。そのボックスのチェックを外さずにレコードがない場合、Webパーツは非表示になります。

** EDIT **
静的Googleマップを使用し、緯度と経度のフィールドに有効な座標が入力されていると、OPからの回答に基づいてピンが自動的に入力されます。

また、v9の修正プログラム32および36で解決されたGoogle Maps APIに問題があったため、これらの修正プログラムを適用できる場合は、問題を解決するのに役立ちます。

+0

デフォルトのLat/Lonが提供されています。レコードが見つからない場合は非表示になります。ピンはありません – anonymouse

+0

公開されたページを表示しているときにエラーがありますか?特にjavascript?あなたのGoogle Keyを追加する必要があるかもしれませんか、latとlongの他の問題があります。 –

+0

apiキーが配置されています。それは何のエラーもなく、ただ "SensorNotRequired"と言っている警告ですが、私はそれが関連しているとは思わない – anonymouse

0

「デフォルトの緯度」と「Googleマップ」Webパーツの「デフォルト経度」の設定は、デフォルトのピンを設定するために使用されていないですが、ため、ページの読み込みに与えられた点でマップを中心に。

JavaScriptを使用して地図にピンを追加できます。ページのライブビューでWebパーツを点検し、のIDを見つけ、「グーグルマップ」Webパーツ

  • の「デフォルトの緯度」、「デフォルト経度」および「詳細を表示スケール」プロパティを設定し

    1. コンテナコンテナIDはマップインスタンスの実際のIDです。 map container id
    2. 使用addGoogleMarker JavaScript関数がステップで取得したIDを使用して、マップにピンを追加する2.

      関数のシグネチャは次のとおりです。
      addGoogleMarker(map, latitude, longitude, title, content, zoom, iconURL)

      これを行うには、「Javascriptを追加しますスタートアップスクリプト」に設定されたスクリプトページの場所とWebパーツ、 『』、および 『次のように設定インラインスクリプト』プロパティ:

      addLoadEvent(function() { 
          var mapInstance = p_lt_ctl00_GoogleMapsWithUniqueID_map; 
          var latitude = {%WebPart.GetValue("GoogleMapsWithUniqueID", "Latitude")%}; 
          var longitude = {%WebPart.GetValue("GoogleMapsWithUniqueID", "Longitude")%}; 
          var zoomScale = {%WebPart.GetValue("GoogleMapsWithUniqueID", "ZoomScale")%}; 
      
          addGoogleMarker(mapInstance, latitude, longitude, '', '', zoomScale, ''); 
      }); 
      

      correcを含むようにスクリプトを変更tステップインスタンスID(ステップ2で取得 - この例ではp_lt_ctl00_GoogleMapsWithUniqueID_map)、およびlatitude,longitudeおよびzoomScale変数(この例ではGoogleMapsWithUniqueID)のWebパーツコントロールIDをマップします。

    このソリューションでは、レイアウトを変更した場合、正しく機能しなくなる、またはWebパーツを移動することがあります。マップのIDはハードコードされており、解決策はjQueryを使用して地図を動的に探し出しIDを取得することです。

    IDはグローバル変数に格納されていないため、IDをハードコーディングするソリューションです。

  • +0

    OPにさらに質問をした後、彼は静的Googleマップを使用しているので、これらの操作を行う必要はありません。緯度と経度を使って地図上にピンを配置します。 –

    関連する問題