Allow edit URL to be customized with doc metadata (#443)

This commit is contained in:
Glavin Wiechert 2018-02-11 20:43:37 -04:00 committed by Joel Marcey
parent 5e39b2e01f
commit 41750667cd
2 changed files with 17 additions and 5 deletions

View file

@ -38,6 +38,18 @@ original_id: doc1
---
```
`custom_edit_url`: The url for editing this document. If this field is not present, the document's edit url will fallback to `editUrl` from optional fields of `siteConfig.js`. See [siteConfig.js](site-config.md) docs for more information.
For example:
```markdown
---
id: doc-markdown
title: Markdown Features
custom_edit_url: https://github.com/facebook/Docusaurus/edit/master/docs/api-doc-markdown.md
---
```
### Blog Posts
Blog Posts use the following markdown header fields that are enclosed by a line `---` on either side:

View file

@ -27,11 +27,11 @@ class Doc extends React.Component {
docSource = docSource.match(new RegExp(/version-.*\/(.*\.md)/, 'i'))[1];
}
let editLink = this.props.config.editUrl && (
<a
className="edit-page-link button"
href={this.props.config.editUrl + docSource}
target="_blank">
const editUrl =
this.props.metadata.custom_edit_url ||
(this.props.config.editUrl && this.props.config.editUrl + docSource);
let editLink = editUrl && (
<a className="edit-page-link button" href={editUrl} target="_blank">
{editThisDoc}
</a>
);