Skip to main content

R Markdown Cookbook Practical Tips and Tricks for R Markdown

Section 4.3 Access the document metadata in R code

When an Rmd document is compiled, all of its metadata in the YAML section will be stored in the list object rmarkdown::metadata. For example, rmarkdown::metadata$title gives you the title of the document. You can use this metadata object in your R code, so that you do not need to hard-code information that has been provided in the YAML metadata. For example, when you send an email with the blastula package [3] within an Rmd document, you may use the title of the document as the email subject, and get the sender information from the author field:
---
title: An important report
author: John Doe
email: john@example.com
---

We have done an important analysis, and want to email
the results.

```{r}
library(rmarkdown)
library(blastula)
smtp_send(
  ...,
  from = setNames(metadata$email, metadata$author),
  subject = metadata$title
)
```