在中间人中,我如何从子布局中添加头部标签?
In middleman how do I add head tags from a child-layout?
在中间人中,我想知道如何从子布局向我的基本布局添加 head 标签。
我有一个 layout.erb 和一个博客-layout.erb。
我通过将附加项放在布局的 YAML 前端中来解决 Jekyll 中的问题,我喜欢这种方法。
我一直在尝试在 Middleman 中重新创建它,但一直没有成功。
我的博客-layout.erb是这样的:
---
head:
- -<%= feed_tag :atom, "/blog/feed.xml", title: "Atom Feed" %>'
---
<% wrap_layout :layout do %>
<div id="main" role="main">
<%= yield %>
</div>
<% end %>
然后在我的 layout.erb 我想这样做:
<% current_page.data.head.each do |headItem| %>
< % = headItem %>
< % end %>
我尝试从 config.rb 访问布局的 frontmatter,但我也没有成功。
这是我的尝试之一:
with_layout :bloglayout do
page "/blog/*", :headers => config[:bloglayout].head
end
我无法弄清楚布局在全局中的存储位置以及如何访问它们。
我还没有弄清楚如何通过 child 布局 frontmatter 来做到这一点。
我所做的是创建了一个数据文件:blogmetaheaders.yml
headers: >
<link rel="alternate" type="application/atom+xml" title="Atom Feed" href="/blog/feed.xml" />
然后在我的 layout.rb 中我有这段代码可以注入 headers:
<% if current_page.path.start_with? 'blog'
data.blogmetaheaders.each do |headerItem, headerValue | %>
<%= headerValue %>
<% end %>
<% end %>
Padrino 的 application helper content_for
优雅地处理从包装布局添加头部标签。
我的布局:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" >
<%= yield_content :head %>
我的博客布局:
<% wrap_layout :layout do %>
<%= yield %>
<% content_for :head do %>
<%= feed_tag :atom, "/blog/feed.xml", :title => "Atom Feed tag" %>
<% end %>
<% end %>
我的config.rb
activate :blog do |blog|
blog.layout = "bloglayout"
在中间人中,我想知道如何从子布局向我的基本布局添加 head 标签。
我有一个 layout.erb 和一个博客-layout.erb。
我通过将附加项放在布局的 YAML 前端中来解决 Jekyll 中的问题,我喜欢这种方法。
我一直在尝试在 Middleman 中重新创建它,但一直没有成功。
我的博客-layout.erb是这样的:
---
head:
- -<%= feed_tag :atom, "/blog/feed.xml", title: "Atom Feed" %>'
---
<% wrap_layout :layout do %>
<div id="main" role="main">
<%= yield %>
</div>
<% end %>
然后在我的 layout.erb 我想这样做:
<% current_page.data.head.each do |headItem| %>
< % = headItem %>
< % end %>
我尝试从 config.rb 访问布局的 frontmatter,但我也没有成功。
这是我的尝试之一:
with_layout :bloglayout do
page "/blog/*", :headers => config[:bloglayout].head
end
我无法弄清楚布局在全局中的存储位置以及如何访问它们。
我还没有弄清楚如何通过 child 布局 frontmatter 来做到这一点。
我所做的是创建了一个数据文件:blogmetaheaders.yml
headers: >
<link rel="alternate" type="application/atom+xml" title="Atom Feed" href="/blog/feed.xml" />
然后在我的 layout.rb 中我有这段代码可以注入 headers:
<% if current_page.path.start_with? 'blog'
data.blogmetaheaders.each do |headerItem, headerValue | %>
<%= headerValue %>
<% end %>
<% end %>
Padrino 的 application helper content_for
优雅地处理从包装布局添加头部标签。
我的布局:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" >
<%= yield_content :head %>
我的博客布局:
<% wrap_layout :layout do %>
<%= yield %>
<% content_for :head do %>
<%= feed_tag :atom, "/blog/feed.xml", :title => "Atom Feed tag" %>
<% end %>
<% end %>
我的config.rb
activate :blog do |blog|
blog.layout = "bloglayout"