我使用DocPad生成系统文档。我以
格式包含发行说明我想要包含一个重定向到最新版本的链接。
我的问题:如何根据配置创建一个重定向到相对URL的链接?我希望非程序员能够轻松改变这一点。
更新:我已将清洁添加到我的docpad.js中,类似于下面的示例。 (见下面的代码)。但是使用" grunt docpad:generate"似乎跳过了重定向(这是一个HTML页面?)。我是一个静态网站。我还确认我在package.json中使用了最新的cleanurls(2.8.1)。
这是我的docpad.js
'use strict';
var releases = require('./releases.json'); // list them as a list, backwards: ["1.3", "1.2", "1.1", "1.0"]
var latestRelease = releases.slice(1,2)[0];
module.exports = {
outPath: 'epicenter/docs/',
templateData: {
site: {
swiftype: {
apiKey: 'XXXX',
resultsUrl: '/epicenter/docs/search.html'
},
ga: 'XXXX'
},
},
collections: {
public: function () {
return this.getCollection('documents').findAll({
relativeOutDirPath: /public.*/, isPage: true
});
}
},
plugins: {
cleanurls: {
simpleRedirects: {'/public/releases/latest': '/public/releases/' + latestRelease}
},
lunr: {
resultsTemplate: 'src/partials/teaser.html.eco',
indexes: {
myIndex: {
collection: 'public',
indexFields: [{
name: 'title',
boost: 10
}, {
name: 'body',
boost: 1
}]
}
}
}
}
};
当我运行grunt docpad:generate时,我的页面会生成,但最后会有错误:
/data/jenkins/workspace/stage-epicenter-docs/docs/docpad/node_modules/docpad-plugin-cleanurls/node_modules/taskgroup/node_modules/ambi/es6/lib/ambi.js:5
export default function ambi (method, ...args) {
^^^^^^
我无法判断是否存在阻止其运行的问题,但这似乎是可疑的。
答案 0 :(得分:1)
如果您的配置可供DocPad Configuration File使用,则可以使用cleanurls plugin的重定向功能来完成动态和静态环境。
使用docpad.coffee
配置文件,它看起来像这样:
releases = require('./releases.json') # ['1.0', '1.1', '1.2', '1.3']
latestRelease = releases.slice(-1)[0]
docpadConfig =
plugins:
cleanurls:
simpleRedirects:
'/releases/latest': '/releases/' + latestRelease
module.exports = docpadConfig