1.2 Un ejemplo rápido
Según nuestra experiencia, la documentación de Hugo puede ser un poco desalentadora para leer y digerir para principiantes.2 Por ejemplo, su guía de “Inicio rápido” solía tener 12 pasos, y usted puede perderse fácilmente si no ha utilizado un generador de sitio web estático antes. Para blogdown, esperamos que los usuarios de todos los niveles al menos puedan comenzar lo más rápido posible. Hay muchas cosas que puede desear modificar para el sitio web más adelante, pero el primer paso es bastante simple: crear un nuevo proyecto en un directorio nuevo en RStudio IDE (File -> New Project
) y llamar a la función en la consola de R del nuevo proyecto:
Luego espere a que esta función cree un sitio nuevo, descargue el tema predeterminado, agregue algunas publicaciones de muestra, ábralas, cree el sitio y ejecútelo en RStudio Viewer, para que pueda obtener una vista previa de inmediato. Si no usa RStudio IDE, necesita asegurarse de que se encuentra actualmente en un directorio vacío,3 en cuyo caso new_site()
hará lo mismo, pero el sitio web se lanzará en su navegador web en lugar de RStudio Viewer.
Ahora debería ver un grupo de directorios y archivos en el proyecto RStudio o en su directorio de trabajo actual. Antes de explicar estos nuevos directorios y archivos, primero introduzcamos una tecnología importante y útil: LiveReload. Esto significa que su sitio web4 Se reconstruirá y volverá a cargar automáticamente en su navegador web5 Cuando modifique cualquier archivo fuente de su sitio web y lo guarde. Básicamente, una vez que inicie el sitio web en un navegador web, ya no necesita volver a generarlo explícitamente. Todo lo que necesita hacer es editar los archivos fuente, como los documentos R Markdown, y guardarlos. No es necesario hacer clic en ningún botón ni ejecutar ningún comando. LiveReload se implementa a través de blogdown::serve_site()
, que está basado en el paquete de R servr (Xie 2018c) de manera predeterminada.6
La función new_site()
tiene varios argumentos, y puede revisar su página de ayuda de R (?blogdown::new_site
) para más detalles. Un tema predeterminado mínimo llamado “hugo-lithium-theme” se proporciona como el tema predeterminado del nuevo sitio,7 Y se puede ver cómo se ve en Figure 1.1.

FIGURA 1.1: La página de inicio del nuevo sitio por defecto.
Tiene que saber tres conceptos más básicos para un sitio web basado en Hugo:
El archivo de configuración
config.toml
, en el que puede especificar algunas configuraciones globales para su sitio. Incluso si no sabe qué es TOML en este momento (se presentará en el capítulo 2), aún podrá cambiar algunas configuraciones obvias. Por ejemplo, puede ver configuraciones como estas enconfig.toml
:baseurl = "/" languageCode = "en-us" title = "A Hugo website" theme = "hugo-lithium-theme" [[menu.main]] name = "About" url = "/about/" [[menu.main]] name = "GitHub" url = "https://github.com/rstudio/blogdown" [[menu.main]] name = "Twitter" url = "https://twitter.com/rstudio"
Puede cambiar el título de la página web, e.g.,
title = "Mi propia página web chévere"
, y actualizar las URL de GitHub y Twitter.El directorio de contenido (por defecto,
content/
). Aquí es donde usted escribe los archivos de origen R Markdown o Markdown para sus publicaciones y páginas. Bajocontent/
del sitio predeterminado, puede verabout.md
y un directoriopost/
que contiene algunas publicaciones. La organización del directorio de contenido depende de usted. Puede tener archivos y directorios arbitrarios allí, según la estructura del sitio web que desee.El directorio de publicación (por defecto,
public/
). Su sitio web se generará en este directorio, lo que significa que no necesita agregar manualmente ningún archivo a este directorio.8 Por lo general, contiene una gran cantidad de archivos*.html
y dependencias como*.css
,*.js
e imágenes. Puede cargar todo enpublic/
a cualquier servidor web que pueda publicar sitios web estáticos, y su sitio web estará en funcionamiento. Hay muchas opciones para publicar sitios web estáticos, y hablaremos más sobre ellos en el capítulo ?? si no está familiarizado con la implementación de sitios web.
Si está satisfecho con este tema predeterminado, ¡está básicamente listo para comenzar a escribir y publicar su nuevo sitio web! Mostraremos cómo usar otros temas en la sección 1.6. Sin embargo, tenga en cuenta que un tema más complicado y elegante puede requerir que aprenda más sobre todas las tecnologías subyacentes, como el lenguaje de plantillas de Hugo, HTML, CSS y JavaScript.
Referencias
Xie, Yihui. 2018c. Servr: A Simple Http Server to Serve Static Files or Dynamic Documents. https://CRAN.R-project.org/package=servr.
Un día Yihui estaba casi listo para suicidarme cuando intentaba averiguar cómo funciona
_index.md
leyendo la documentación una y otra vez, y buscando desesperadamente en el foro de Hugo.↩En R, compruebe la salida de
list.files('.')
y asegúrese de que no incluya archivos distintos aLICENSE
, el archivo de proyecto de RStudio (*.Rproj
),README
oREADME.md
.↩Hasta que configure su sitio web para ser implementado, LiveReload solo actualiza la versión local de su sitio web. Esta versión solo es visible para usted. Para que su sitio web pueda buscarse, descubrirse y vivir en Internet, tendrá que cargar los archivos de su sitio web en un creador de sitios. Consulte el capítulo ?? para obtener más detalles.↩
También puede pensar en RStudio Viewer como un navegador web.↩
Hugo tiene su propia implementación LiveReload. Si desea aprovecharlo, puede establecer la opción global
options(blogdown.generator.server = TRUE)
. Ver la secciónD.2 para más información.↩Puede encontrar su código fuente en GitHub: https://github.com/yihui/hugo-lithium-theme. Este tema se bifurcó de https://github.com/jrutheiser/hugo-lithium-theme y se modificó para que funcione mejor con blogdown.↩
Ejecutando
serve_site()
obuild_site()
, los archivos se generarán y publicarán en su directorio de publicación automáticamente.↩