gpt4 book ai didi

nanoc - nanoc 中的文件必须始终位于布局文件夹中吗?

转载 作者:行者123 更新时间:2023-12-02 08:37:03 24 4
gpt4 key购买 nike

我们想在我们的 nanoc 站点的内容中使用服务器端包含 (SSI)。这将允许我们分 block 共享信息并将其包含在多个页面中。它还将允许我们只维护此共享信息的一个源文件。

我想出了如何在 nanoc 中添加 SSI(部分)。如您所知,在 nanoc 中我们有以下根级文件夹,其中包括:
/内容/
/布局/

根据我找到的说明 ( https://nanoc.ws/doc/items-and-layouts/#partials ),似乎“部分”或包含文件需要位于/layouts/文件夹中(在/content/文件夹之外)。

例如:以下代码用于插入包含文件/layouts/partials/shared/test.html

<%= render 'partials/shared/test/' %>

换句话说,代码假定包含文件将放置在布局文件夹中。您知道将 SSI 的默认路径更改为/content/的方法吗?这样我们就不会将内容与布局混合在一起?

提前谢谢你。

最佳答案

部分默认位于 layouts/目录中,并通过 rendering helper 使用使用 #render 辅助方法。

但是,您也可以将要包含的内容(“部分内容”)也放入 content/目录中,尽管方法有所不同。

例如,创建content/partials/foo.txt:

I am included!

确保部分文件未被路由或编译,因此编辑 Rules 并确保首先执行这些规则:

compile '/partials/*' do
write nil
end

现在在任何项目或布局中,您都可以包含此部分:

<%= @items['/partials/foo.*'].compiled_content %>

这假定使用 ERB 过滤包含项/布局,但您也可以使用 Haml 左右。

你可以让编译规则做一些处理,例如执行 Markdown 过滤,然后过滤器输出的 HTML 将被包含在内。

关于nanoc - nanoc 中的文件必须始终位于布局文件夹中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20367811/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com