ruby – 使用MIddleman 3.0 – 如何在动态页面上设置单个页面标题?

前端之家收集整理的这篇文章主要介绍了ruby – 使用MIddleman 3.0 – 如何在动态页面上设置单个页面标题?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在中间人组建一个简单的投资组合网站.我根据本地YAML数据动态生成“工作”页面.这是在config.rb中:
data.work.projects.each do |project|
  page "/work/#{project[0]}.html",:proxy => "project_template.html" do
    @project = project
  end
end

对于SEO目的,我希望这些动态生成页面中的每一个具有唯一的页面标题和描述.

标题当前在这样的布局文件中设置

%title
    = current_page.data.title

我知道我可以使用frontmatter来设置这样的current_page变量

---
title: "Recent Work - "
---

我可以把它放在我的project_template.haml中,但是有没有办法得到这样的东西呢?

---
title: "Recent Work - " + @project.title
---

解决方法

您可以使用content_for,而不是在前端设置标题(就像您在做).

例如.在布局中:

%title = yield_content(:title)

并在动态页面的模板中:

– content_for(:title,@ project.title)

猜你在找的Ruby相关文章