blogdown `title` не будет отображаться при отображении` _index.html` - PullRequest
0 голосов
/ 02 января 2019

Я создал файл _index.Rmd в своем каталоге blogdown /*/content/, и тело файла _index.Rmd выглядит следующим образом:

---
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.Как мне достичь этой цели?

enter image description here

1 Ответ

0 голосов
/ 03 января 2019

Это потому, что главная страница индекса имеет специальную обработку с этой темой. Как вы можете изменить это, перейдите на 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" . }}

Теперь вы можете редактировать этот файл, добавляя желаемый заголовок разными способами, например, если вы хотите использовать тот же стиль, что и заголовок сообщения, вы можете добавить его между <main class="content"> и <div class="list>:

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

Если вы хотите получить заголовок из файла .Rmd, вы должны сделать:

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

Теперь после перестройки сайта заголовок появится на главной странице.

...