DocPad 中的可配置重定向 URL

Configurable redirect URL in DocPad

我正在使用 DocPad 生成系统文档。我以

格式包含发行说明

我想添加一个 link,它将重定向到最新版本。

我的问题:如何创建一个 link 以根据配置重定向到相对 URL?我希望非程序员可以轻松更改它。

更新:我已将 cleanurls 添加到我的 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
                    }]
                }
            }
        }
    }
};

当我 运行 g运行t 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) {
^^^^^^

我不知道这是否是阻止此 运行ning 的问题,但它看起来很可疑。

前提是您的配置可用于 DocPad Configuration File, you can use the redirect abilities of the 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