Skip to content

Commit

Permalink
feat(gatsby-source-wordpress): create site metadata node (#9329)
Browse files Browse the repository at this point in the history
This fixes #8051.
  • Loading branch information
Martin Hähnel authored and pieh committed Oct 24, 2018
1 parent 4d5c5e0 commit 2103e87
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 5 deletions.
14 changes: 11 additions & 3 deletions packages/gatsby-source-wordpress/src/fetch.js
Expand Up @@ -71,19 +71,27 @@ Mama Route URL: ${url}
password: _auth.htaccess_pass,
}
}

if (_hostingWPCOM && _accessToken) {
options.headers = {
Authorization: `Bearer ${_accessToken}`,
}
}

allRoutes = await axios(options)
} catch (e) {
httpExceptionHandler(e)
}

let entities = []
let entities = [
{
__type: `wordpress__site_metadata`,
name: allRoutes.data.name,
description: allRoutes.data.description,
url: allRoutes.data.url,
home: allRoutes.data.home,
},
]

if (allRoutes) {
let validRoutes = getValidRoutes({
Expand Down
11 changes: 9 additions & 2 deletions packages/gatsby-source-wordpress/src/normalize.js
Expand Up @@ -165,9 +165,16 @@ exports.liftRenderedField = entities =>
})

// Exclude entities of unknown shape
// Assume all entities contain a wordpress_id, except for whitelisted type wp_settings
// Assume all entities contain a wordpress_id,
// except for whitelisted type wp_settings and the site_metadata
exports.excludeUnknownEntities = entities =>
entities.filter(e => e.wordpress_id || e.__type === `wordpress__wp_settings`) // Excluding entities without ID, or WP Settings
entities.filter(
e =>
e.wordpress_id ||
e.__type === `wordpress__wp_settings` ||
e.__type === `wordpress__site_metadata`
)
// Excluding entities without ID, or WP Settings

// Create node ID from known entities
// excludeUnknownEntities whitelisted types don't contain a wordpress_id
Expand Down

0 comments on commit 2103e87

Please sign in to comment.