【问题标题】:How can I get category page hyperlinks of my Jekyll website hosted on GitHub working?如何获取托管在 GitHub 上的 Jekyll 网站的类别页面超链接?
【发布时间】:2017-08-08 18:02:58
【问题描述】:

对于托管在 GitHub 上的 Jeykll website,我创建了一个自定义解决方案(没有 Jeykll 插件),以在页面 * 上显示某个类别的所有帖子链接。我使用setup of GitHub pages for local Jekyll builds 并在本地使用bundle exec jekyll serve 构建。如果访问http://127.0.0.1:4000 并按下下方左侧栏中的嵌入式硬件软件超链接按钮之一模式类别帖子链接按预期显示。

但是,如果我访问托管在 GitHub 上的网站,我会收到“未找到 404 文件”错误。从过去我记得这可能与本地和 GitHub Pages 构建中对 Jekylls 永久链接的不同处理有关。但具体记不太清了。

如果有人可以帮助我,那就太好了。

* 站点说明: 现在不再列出单个类别的帖子链接,而是按部分列出所有类别的帖子链接。但这并不重要。这个问题。

【问题讨论】:

    标签: jekyll liquid github-pages


    【解决方案1】:

    问题是网站不在根级,所以需要在_config.yml中使用base url:

    baseurl: /design-pattern-references
    

    然后利用该设置生成完整路径,例如:_layouts/index.html

     <a href="{{ post.url | absolute_url }}">{{ post.title }}</a>
    

    【讨论】:

    • 本地构建是否仍可使用此解决方案?或者如果需要,我该如何管理差异?
    • @thinwybk 是的,它也可以在本地工作。您可以在 localhost:4000/design-pattern-references 使用 jekyll serve 访问该网站
    • 带'| absolute_url' 它在本地构建中对我不起作用。但是你指导了我into the right direction谢谢你的提示。
    • 着陆页左侧的EmbeddedHardwareSoftware的超链接不正确。站点 url 在 baseurl 前面的超链接中出现了两次或类似的东西......
    • 这可能是因为左侧的超链接没有使用absolute_url,而是在url或baseurl前面。
    猜你喜欢
    • 1970-01-01
    • 2015-10-08
    • 2015-10-13
    • 1970-01-01
    • 1970-01-01
    • 2021-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多