2

在 Hexo 中,如何从page.path中删除 index.html 位?

我的代码:

<link rel="canonical" href="<%= config.url %>/<%= page.path %><% } %>">

呈现的 HTML:

<link rel="canonical" href="http://yoursite.com/about/index.html">

先感谢您

4

2 回答 2

1

这个请求Hexo 4.0 的路线图上。它尚未实施(在撰写此答案时)。

在上述问题中,sapegin 使用自定义助手提供了一种解决方法:

hexo.extend.helper.register('page_url', function(path, options) {
    return this.url_for(path, options).replace(/index\.html$/, '');
});

如果您将此帮助程序放在类似的文件中scripts/helpers.js,则可以在您的帖子和页面中使用它:

<%= page_url(page.path) %>

它不如内置变量好,但它可以工作。

于 2018-10-15T16:59:30.860 回答
0

因为页面需要放在子目录中。它看起来像这样:

source
  _posts
  ...
  about
    index.md

就这样。这里不需要任何帮手。

PS您还可以使用此查看实时示例源代码

于 2018-12-11T15:57:04.283 回答