Skip to main content

React Component

The Site Search 360 React component provides a simple way of adding Site Search 360 to your React app.

Installation​

If you are using NPM:

npm install site-search-360-react

If you are using Yarn:

yarn add site-search-360-react

Usage​

To add Site Search 360 (a search box and a search button) to your site, use the SiteSearch360 component.

import SiteSearch360 from 'site-search-360-react';

<SiteSearch360 siteId="yoursite.com" />

// OR in vanilla JS

React.createElement(SiteSearch360, { siteId: 'yoursite.com' });

Make sure to use your siteId to connect the search to your account. The value of the siteId prop can be found under Account -> General after signing up to Site Search 360.


Props​

siteId (String)​

The Site ID of your Site Search 360 project. This setting can also be set in the ss360Config prop.

ss360Config (Object)​

Site Search 360 configuration object. See the Site Search 360 installation docs for more details.

showButton (Boolean)​

Whether to display a search button. Default: true

applyStyling (Boolean)​

Whether to apply default styling to the search input. Default: true

We support adding an alias on the Site Search 360 component for React, which makes it possible to use components like this: <SiteSearch360 siteId=".." alias="SS360mysite1"> and <SiteSearch360 siteId=".." alias="SS360mysite2">. This way, if you wish to use a callback for a specific instance, you can do it like this:

callbacks: {
init() {
setTimeout(() => window.SS360_mysite1.showResults("*"), 1);
}
}
callbacks: {
init() {
setTimeout(() => window.SS360_mysite2.showResults("*"), 1);
}
}

If you're using Gatsby​

You can integrate Site Search 360 into Gatsby, the open source framework. Here's the code snippet:

import React from "react"
import { useStaticQuery, Link, graphql } from "gatsby"
import SiteSearch360 from 'site-search-360-react';

export default function Layout({ children }) {
const data = useStaticQuery(
graphql`
query {
site {
siteMetadata {
title
}
}
}`
);
return (
<div>
<Link to={`/`}>
<h3>{data.site.siteMetadata.title}</h3>
</Link>
<Link to={`/about/`}>
About
</Link>
<SiteSearch360 siteId="yoursite.com" />
{children}
</div>
);
}

Make sure to use your siteId to connect the search to your account.