# Source code para construir tu página web en texto-plano.xyz
Realizado con [Jekyll](https://jekyllrb.com) y un CSS propio, por
[~santisoler](https://texto-plano.xyz/~santisoler)
## Como armar mi propio sitio web
### Clonar el repositorio
Comenzamos por clonar este repositorio utilizando `git`.
Si estamos dentro de texto plano podemos clonarlo con:
```
git clone -b main /var/www/cgit_repos/santisoler/website-template.git mi-sitio-web
```
O si estamos en una máquina propia con:
```
git clone -b main https://git.texto-plano.xyz/santisoler/website-template mi-sitio-web
```
Entramos a la carpeta en la que clonamos el repositorio:
```
cd mi-sitio-web
```
Dentro de esta carpeta encontramos el código fuente para construir nuestro
sitio web.
### Configurando el sitio
Primero vamos a editar r el archivo `_config.yml`.
Vamos a configurar el título del sitio y el nickname del autor:
```
title: ~santisoler
author: ~santisoler
```
Dado que nuestro sitio en texto-plano no está alojado en el root del website,
es necesario configurar el baseurl, que en general debe ser igual a una barra
(`/`) seguida de nuestro nombre de usuario con el tilde:
```
baseurl: /~santisoler
```
Luego podemos editar el `index.md` para agregar contenido al home de nuestro
sitio. Por ejemplo, podemos escribir algo acerca de nosotros y listar nuestros
perfiles en la red.
### Añadiendo contenido
Podemos añadir contenido a nuestro sitio web a través de archivos Markdown. Por
ejemplo, si queremos añadir una nueva entrada a nuestro blog, debemos crear un
archivo en `_posts` cuyo nombre esté compuesto por la fecha de publicación
y luego un nombre sencillo, por ejemplo:
```
touch _posts/2021-03-22-mi-primer-posteo.md
```
Cada entrada del blog debe tener un header (en YAML) y luego el contenido (en
Markdown). Por ejemplo:
---
title: Mi primer posteo
layout: post
excerpt: |
Este es un resumen de mi posteo
---
Acá puedo escribir mi entrada del blog usando Markdown.
Puedo armar listas:
- un elemento
- otro elemento
O listas numeradas:
1. Primer elemento
2. Segundo elemento
Con enlaces, por ejemplo a [Wikipedia](https://www.wikipedia.org).
O bien podemos crear código:
```
echo "Aguante texto-plano"
```
#### Clasificar los posts en categorias
Este template nos permite clasificar nuestras entradas de blogs en categorías
o secciones. Por ejemplo, supongamos que vamos a mantener dos categorías: `Blog
personal` y `Tutoriales`. A la hora de escribir una nueva entrada del blog,
vamos a especificar la categoría a la cual este pertenece a través del
parámetro `categories`. Por ejemplo, creamos un post para nuestro `Blog
personal`:
---
title: Mi primer posteo
layout: post
categories: Blog personal
excerpt: |
Este es un resumen de mi posteo
---
Y otro para la sección `Tutoriales`:
---
title: ¿Cómo usar Jekyll?
layout: post
categories: Tutoriales
excerpt: |
Este es mi tutorial
---
No nos olvidemos de editar nuestro `_config.yml`, activando las categorías en
el home:
```
# Split the blog posts in categories
show_categories: true
```
Cuando construyamos el sitio, nuestro home mostrará todos los posts del blog,
pero divididos en sus correspondientes categorías.
### Construir el sitio
Una vez que generamos contenido nuevo, vamos a proceder a construir el sitio
web. Esto lo debemos hacer a través de Jekyll.
Si estamos dentro de texto-plano, podemos ejecutar:
```
jekyll26 build
```
Si instalaste `jekyll` a través de `bundler` en tu computadora, podés usar:
```
bundle exec jekyll build
```
Estos comandos generarán una carpeta `_site` que contiene todos los archivos
necesarios para servir nuestro sitio web.
### Servir el sitio localmente
Si estás modificando tu sitio desde tu computadora, podés ver una cómo va
quedando sirviéndolo localmente con:
```
bundle exec jekyll serve
```
Jekyll te dará una url a través de la cual vas a poder visualizar tu sitio web.
### Servir el sitio en texto-plano
Lo único que queda es publicar el sitio web para que todes puedan acceder a él.
Para ello debemos copiar todos los archivos de la carpeta `_site` en
`~/public_html/`:
```
cp -r _site/* ~/public_html/
```
A veces será necesario quitar el sitio web viejo que está siendo servido
y reemplazarlo por el nuevo:
**USAR ESTE COMANDO CON CUIDADO!**
```
rm -r ~/public_html/*
cp -r _site/* ~/public_html/
```
Recuerda que cada vez que creemos una nueva entrada de nuestro blog o hagamos
cualquier modificación a nuestro sitio, lo haremos en los archivos ubicados en
`mi-sitio-web`. Mientras que el contenido de `~/public_html` solo será aquel
que cree automáticamente Jekyll.
Es por eso que es importante que **guardes copias de la carpeta `mi-sitio-web`**.
Si sabes usar `git` para gestionar repositorios, puedes utilizarlo para
gestionar los cambios de tu sitio web.
## Licencia
Contenido bajo
[Licencia Creative Commons Atribución 4.0 Internacional][cc-by].
[![CC BY 4.0][cc-by-image]][cc-by]
[cc-by]: https://creativecommons.org/licenses/by/4.0/deed.es
[cc-by-image]: https://i.creativecommons.org/l/by/4.0/88x31.png