Standard record schema
All root-level properties are computations of selectors with fallbacks. All properties that aren’t marked as optional are present in the final record. Optional are only present if the Algolia Crawler finds relevant information.Default schema
By default, the Netlify plugin extracts one record per page, with the following schema:TypeScript
Example record
JSON
Content splitting for better relevance
For better relevance and to stay within Algolia’s records size limits, Algolia splits the content of long pages into multiple records. Algolia creates all indices with the index settings{ distinct: true, attributeForDistinct: 'url' } to deduplicate them.
Hierarchical schema
If your website has a hierarchical structure, you might want to create one Algolia record per section. To support this, settemplate = "hierarchical" in your netlify.toml configuration file:
TOML
h1, h2, and so on).
If your headers have an id, it’s added to the url.
This lets users directly go to the relevant sections.
The schema of the records is close to the default schema:
TypeScript
Supported JSON-LD attributes
The Algolia Crawler supports a limited set of JSON-LD attributes. They should follow the Schema.org structure. If present, the Algolia Crawler prioritizes the attributes found in JSON-LD during the extraction. The current list of supported attributes are:ArticleauthordatePublisheddateModified
Sitemaps
The plugin automatically finds sitemaps in yourrobots.txt based on common sitemap URLs.
Exclude URLs from crawls
The plugin supports several standard way of excluding URLs from a crawl.Exclude URLs with a robots.txt file
To allow or disallow Algolia to crawl URLs,
use the standard robots.txt syntax:
Exclude URLs with a robots meta tags
To exclude a specific page,
including a robots meta tag or a meta tag that only targets the Algolia Crawler.
HTML
HTML
Exclude URLs with canonical URLs
You can indirectly exclude a page from the crawl and redirect the Algolia Crawler to another page by using thecanonical meta tag.
Canonical URLs are especially helpful to exclude page variants with query parameters, such as pagination parameters or search terms.
HTML
Enable JavaScript to crawl client-side rendered pages
If your website is client-side rendered, you can turn on JavaScript rendering by setting therenderJavaScript option to true in your netlify.toml file.
Password protection
If your Netlify site is password-protected, the Crawler automatically uses this password to crawl your website.The Algolia Crawler stores your encrypted password.