11.12.11 • Published 4 months ago

sitecore-search-with-google-map v11.12.11

Weekly downloads
-
License
-
Repository
-
Last release
4 months ago

Sitecore Search with Google Maps Integration

We’ve added a library on NPM designed to simplify Sitecore Search integration in Next.js applications when working with Google Maps. This library reduces the number of steps required for end users by streamlining the process and enhancing usability with Google Maps-based location searches.

Features

  • Easy integration of Google Maps with Sitecore Search in Next.js
  • Location-based search using latitude, longitude, and customizable search radius
  • Multiple layout options for flexible UI design
  • Minimal configuration required for rapid development

Installation

npm install sitecore-search-with-google-map

Usage

Simply import the <span>Search</span> component and call it within your Next.js application:

import { Search } from "sitecore-search-with-google-map";

<Search
  title="Sitecore Search with Google Maps Integration"
  discoverDomainId={discoverDomainId || ""}
  env={env as Environment}
  customerKey={customerKey || ""}
  apiKey={searchApiKey || ""}
  searchSource={searchSource || ""}
  rfkId={rfkId || ""}
  layout={"SearchWithInputOnTopWithParallelMapAndContent"}
  radiusInKM={20}
  description="A custom Next.js package combining Sitecore Search with Google Maps for interactive, location-based search. Hosted on NPM and tested with a Next.js site on Vercel. Refer here: https://www.npmjs.com/package/sitecore-search-with-google-map"
  noResultFound="No result found"
  inputPlaceholder="Please search location here; it will fetch places from Google Maps and render data from Sitecore Search."
  mapIcon={imgUrl}
/>

How It Works

  1. When a user searches for a location in the input field, the Google Maps API is called to fetch location suggestions.
  2. Once a location is selected, Google Maps API is called again to retrieve latitude and longitude.
  3. Sitecore Search API is called with the geolocation data and a configurable search radius.
  4. Search results are displayed based on the proximity of the selected location.

Example Query Configuration

const geoFilter = new FilterGeo("location", `${radiusInKM || 10}km`);
query
  .getRequest()
  .setSearchFacetAll(true)
  .setSources(searchSourceIds)
  .setSearchFilter(geoFilter);

Props

PropTypeRequiredDescription
titlestringYesComponent title
descriptionstringNoComponent description
inputPlaceholderstringNoPlaceholder for the input field
mapIconstringNoURL for the icon to display on the map
noResultFoundstringNoMessage when no results are found
radiusInKMnumberNoRadius for location-based search (in km)
rfkIdstringYesSitecore Search RFK ID
searchSourcestringYesSitecore Search source ID
apiKeystringYesSitecore Search API key
customerKeystringYesSitecore Search customer key
envstringYesSitecore Search environment
discoverDomainIdstringYesSitecore Search Discover Domain ID
layoutstringNoLayout variation (see available values below)

Available Layouts

layout?:
    | "SearchWithInputOnTopWithParallelMapAndContent"
    | "SearchWithInputMapContentStack"
    | "SearchWithInputOnTopWithParallelMapAndContentSmallMap"
    | "SearchWithParallelMapAndInputWithContent"
    | "SearchWithInputOnTopWithParallelMapAndContentReverse"
    | "SearchWithInputOnTopWithParallelMapAndContentSmallMapReverse"
    | "SearchWithParallelMapAndInputWithContentReverse"
    | undefined;

Troubleshooting

Google Maps API Key Issues

  • Ensure the Google Maps API key has the proper permissions for Places API and Geocoding API.
  • Confirm billing is enabled for the Google Cloud project.

Sitecore Search API Key Issues

  • Double-check the API key and customer key in your environment variables.
  • Ensure search source and RFK ID are correctly set up in Sitecore Search.

NPM Package

For more details, refer to the official package: https://www.npmjs.com/package/sitecore-search-with-google-map

11.12.11

4 months ago

11.12.1

4 months ago

11.12.0

4 months ago

11.11.99

4 months ago

11.11.88

4 months ago

11.11.77

4 months ago

11.11.66

4 months ago

11.11.55

4 months ago

11.11.44

4 months ago

11.11.33

4 months ago

11.11.22

4 months ago

11.11.11

4 months ago

11.11.0

4 months ago

2.3.4

4 months ago

2.3.3

4 months ago

2.2.2

4 months ago

12.1.2

4 months ago

12.1.1

4 months ago

12.1.0

4 months ago

1.1.3

4 months ago

1.1.2

4 months ago

1.1.1

4 months ago

1.1.0

4 months ago

1.0.0

4 months ago

0.1.8

4 months ago

0.1.7

4 months ago

0.1.5

4 months ago

0.1.4

4 months ago

0.1.3

4 months ago

0.1.2

4 months ago

0.1.0

4 months ago