blogdown `title` 不会显示在呈现的 `_index.html` 上

blogdown `title` won't display on rendered `_index.html`

我在我的 blogdown /*/content/ 目录中创建了一个 _index.Rmd 文件,_index.Rmd 文件的 body 如下所示:

---
title: "Home"
date: "2016-05-05T21:48:51-07:00"
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

Welcome to the home page of this blogdown site.

我希望看到 "Home" 标题标题,但什么也没有出现。我认为这是一个有意的设计选择。我能理解为什么,但就我而言,我希望我在 YAML 中指定的标题显示在呈现的 _index.html 文件中。我如何实现这个目标?

这是因为索引(主)页对此主题进行了特殊处理。如何改变它是去 themes/(yourtheme)/layouts/index.html。它看起来像:

{{ partial "header.html" . }}

<main class="content">

  <div class="list">
     {{ range (.Paginate ((where .Data.Pages "Type" "post").GroupByDate "2006")).PageGroups }}    
  <h2 class="list-title">{{ .Key }}</h2>
    {{ range .Pages }}

    {{ partial "list-item.html" . }}

    {{ end }}
    {{ end }}
  </div>  

  {{ partial "pagination.html" . }}

</main>

{{ partial "footer.html" . }}

现在您可以编辑此文件以通过多种方式添加所需的标题,例如,如果您想要与 post 标题相同的样式,您可以在 <main class="content"><div class="list>:

<h1 class="article-title">Home</h1>

如果您想从 .Rmd 文件获取标题,您可以这样做:

<h1 class="article-title">{{ .Title }}</h1>

现在重建站点后标题将出现在主页上。