Índice #
- Instalación de org-static-blog
- Configuración
- Hoja de estilos css y fuentes
- Crear un artículo
- Publicar un artículo
- Modificar un articulo
Recientemente cambió la forma de publicar en mi blog, escribí un articulo sobre ello, pero pasado un tiempo creo que fue un poco precipitado ese escribir articulo, ¿por quó? , pues primero porque aunque org-static-blog no es difícil de implementar, me metí en un charco ya que empecó a modificar el fichero org-static-blog.el
sin tener conocimientos de lisp, lo que hizo gastar mucho muchas tiempo en el sistema prueba-error, cuando lo mas fácil hubiese sido no mordicar nada y jugar con las hojas de estilo css hasta que el blog tuviese el aspecto deseado, y esto me lleva a la segunda razón, que es por la que voy a escribir esta entrada del blog, y es que si en un futuro el paquete de org-static-blog recibe una actualización, tendría que volver a modificar el fichero .el
y en el mejor de los casos tendría que volver a perder tiempo en configurarlo una vez más.
Todo esto me llevo a plantearme que tenia que buscar la fórmula de realizar el blog sin mordicar nada mas que la hoja css
y eso es lo que voy a explicar aquí, desde cero y de la forma mas sencilla que só.
Instalación de org-static-blog #
Doy por hecho que tienes instalado emacs y unos mínimos conocimientos sobre su manejo, así que empecemos por instalar org-static-blog, pulsa
M-x package-install <RET> org-static-blog <RET>
y comenzará la instalación
Si utilizas use-package
añade a tu fichero init.el
(use-package org-static-blog
:ensure t
:init)
Configuración #
Tememos que realizar una mínima configuración como es el nombre del blog, donde se van a guardar los borradores, artículos, ficheros html que van a ser publicados, etc.
Lo puedes hacer editando el fichero ubicado en /.emacs.d/elpa/org-static-blog-xxxxx/
o la mejor opción que es modificando tu fichero init.el
Configuración general #
(setq org-static-blog-publish-title "el blog de lázaro"
org-static-blog-publish-url "https://elblogdelazaro.org/"
org-static-blog-publish-directory "~/Documentos/proyectos/elblogdelazaro.org/public/"
org-static-blog-posts-directory "~/Documentos/proyectos/elblogdelazaro.org/posts"
org-static-blog-drafts-directory "~/Documentos/proyectos/elblogdelazaro.org/drafts"
org-static-blog-rss-file "index.xml"
org-static-blog-rss-max-entries 10
org-static-blog-langcode "es"
org-export-with-toc nil
org-static-blog-enable-tags t
org-export-with-section-numbers nil
org-static-blog-preview-ellipsis "(ver más..)"
org-static-blog-preview-link-p t
org-static-blog-preview-convert-titles nil
org-static-blog-use-preview t)
org-static-blog-publish-title "el blog de lázaro"
define el nombre del blogorg-static-blog-publish-url "https://elblogdelazaro.org/"
la url del blogorg-static-blog-publish-directory "~/Documentos/proyectos/elblogdelazaro.org/public/"
ruta donde se exportan los ficheroshtml
org-static-blog-posts-directory "~/Documentos/proyectos/elblogdelazaro.org/posts"
ruta de los ficheroorg
que contienen los artículos a explotar comohtml
org-static-blog-drafts-directory "~/Documentos/proyectos/elblogdelazaro.org/drafts"
ruta donde guardaremos los borradores de los artículos a publicarorg-static-blog-rss-file "index.xml"
nombre del fichero que contendrá el indice rss del blogorg-static-blog-rss-max-entries 10
número de entradas a mostrar en por el fichero rssorg-static-blog-langcode "es"
lenguaje del blogorg-export-with-toc nil
el blog no va a utilizar tabla de contenidos (cambia el valor atrue
si quieres una toc)org-static-blog-enable-tags t
el blog generará etiquetas para las categorías (nil
si no quieres etiquetas)org-export-with-section-numbers nil
no numera cada sección (true
si quieres numerarlas)org-static-blog-preview-ellipsis "(ver más..)"
si utilizas preview del blog (vista previa de artículos), el comentario del enlaceorg-static-blog-preview-link-p t
en modo preview, si vamos a utilizar un enlace (ver mas..
) para ir al articulo.org-static-blog-preview-convert-titles nil
cuando preview esta habilitado convierte cabecerasa
en la vista previa"
org-static-blog-use-preview t)
utilizamos preview del blog , por defecto muestra 5 artículos, si lo ponemos anil
muestra la ultima entrada.
Tambión podemos personalizar el rss del blog
(setq org-static-blog-rss-extra
(concat
"<generator>"
(format "Emacs %d.%d" emacs-major-version emacs-minor-version) " "
"Org-mode " (org-version) " "
"org-static-blog 1.4.0"
"</generator>\n"
"<webMaster>" user-full-name " (" user-mail-address ") " "</webMaster>\n"
"<image>\n"
"<url>" org-static-blog-publish-url "static/favicon.ico" "</url>\n"
"<title>" org-static-blog-publish-title "</title>\n"
"<link>" org-static-blog-publish-url "</link>\n"
"</image>\n"))
Cabecera HTML #
Definida en la función org-static-blog-page-header
, inserta el <head>
de cada página, usaremos esta función para incluir el css, fuentes, y/o javascript personalizados para el blog.
(setq org-static-blog-page-header
"<meta name=\"author\" content=\"Carlos M.\">
<meta name=\"viewport\" content=\"initial-scale=1,width=device-width,minimum-scale=1\">
<link href= \"static/style.css\" rel=\"stylesheet\" type=\"text/css\" />
<link rel=\"stylesheet\" href=\"static/font-awesome/css/font-awesome.css\">
<link rel=\"icon\" href=\"static/favicon.ico\">"
)
Body #
Inserta al comienzo de la etiqueta
de cada pagina , aquí pongo el logo del blog y su url(setq org-static-blog-page-preamble
"<div style=\"text-align:center\">
<img src=\"static/logo.png\" alt=\"elblogdelazaro\"><br>
<a href=\"https://elblogdelazaro.org\">el blog de lázaro</a>
</div>")
Pie #
Por ultimo configuro el pie de la pagina, al final de la etiqueta
Aquí tengo que hacer un par de aclaraciones, si quieres utilizar los iconos awesome que ves en el pie de esta pagina, primero has de descargarlos a un lugar que sea accesible por el servidor y configurar la cabecera HTML para indicar esa ruta static/font-awesome/css/font-awesome.css
Puedes descargarlos en https://fontawesome.com/download
Si por el contrario no los quieres utilizar puedes borrar desde <footer id=\"footer\"
hasta el ultimo