diff --git a/src/app.test.js b/src/app.test.js index 09e0c781..749b4eda 100644 --- a/src/app.test.js +++ b/src/app.test.js @@ -34,8 +34,8 @@ describe('Application', () => { it('server renders pages that do not require authentication', () => { const urlTitles = { - '/s': 'Saunatime | search saunas everywhere', '/': 'Book saunas everywhere | Saunatime', + '/s': 'Search results for map search | Saunatime', '/l/listing-title-slug/1234': 'Loading listing…', '/u/1234': 'Profile page with display name: 1234', '/login': 'Login', diff --git a/src/containers/SearchPage/SearchPage.js b/src/containers/SearchPage/SearchPage.js index 6b879585..cda69af3 100644 --- a/src/containers/SearchPage/SearchPage.js +++ b/src/containers/SearchPage/SearchPage.js @@ -236,7 +236,12 @@ export class SearchPageComponent extends Component { // Schema for search engines (helps them to understand what this page is about) // http://schema.org // We are using JSON-LD format - const schemaTitle = intl.formatMessage({ id: 'SearchPage.schemaTitle' }); + const siteTitle = config.siteTitle; + const searchAddress = address || intl.formatMessage({ id: 'SearchPage.schemaMapSearch' }); + const schemaTitle = intl.formatMessage( + { id: 'SearchPage.schemaTitle' }, + { searchAddress, siteTitle } + ); const schemaDescription = intl.formatMessage({ id: 'SearchPage.schemaDescription' }); const schemaListings = listings.map((l, i) => { const title = l.attributes.title; @@ -253,7 +258,7 @@ export class SearchPageComponent extends Component { }); const schemaMainEntity = JSON.stringify({ '@type': 'ItemList', - name: address, + name: searchAddress, itemListOrder: 'http://schema.org/ItemListOrderAscending', itemListElement: schemaListings, }); diff --git a/src/containers/SearchPage/__snapshots__/SearchPage.test.js.snap b/src/containers/SearchPage/__snapshots__/SearchPage.test.js.snap index 84a65ec5..0489cf01 100644 --- a/src/containers/SearchPage/__snapshots__/SearchPage.test.js.snap +++ b/src/containers/SearchPage/__snapshots__/SearchPage.test.js.snap @@ -9,7 +9,7 @@ exports[`SearchPageComponent matches snapshot 1`] = ` \"@type\": \"SearchResultsPage\", \"description\": \"SearchPage.schemaDescription\", \"name\": \"SearchPage.schemaTitle\", - \"mainEntity\": [{\"@type\":\"ItemList\",\"itemListOrder\":\"http://schema.org/ItemListOrderAscending\",\"itemListElement\":[]}] + \"mainEntity\": [{\"@type\":\"ItemList\",\"name\":\"SearchPage.schemaMapSearch\",\"itemListOrder\":\"http://schema.org/ItemListOrderAscending\",\"itemListElement\":[]}] } " scrollingDisabled={false} diff --git a/src/translations/en.json b/src/translations/en.json index 6a082adc..845dd0a5 100644 --- a/src/translations/en.json +++ b/src/translations/en.json @@ -408,8 +408,9 @@ "SearchPage.loadingResults": "Loading search results…", "SearchPage.noResults": "Could not find any listings.", "SearchPage.openMapView": "Map view", + "SearchPage.schemaMapSearch": "map search", "SearchPage.schemaDescription": "Showing search results", - "SearchPage.schemaTitle": "Saunatime | search saunas everywhere", + "SearchPage.schemaTitle": "Search results for {searchAddress} | {siteTitle}", "SearchPage.searchError": "Search failed. Please try again.", "SearchResultsPanel.nextPage": "Next page", "SearchResultsPanel.previousPage": "Previous page",