đŸ’Ÿ Archived View for bwog-notes.chagratt.site â€ș 2020 â€ș arriv%C3%A9e-dun-blogroll â€ș index.gmi captured on 2024-06-16 at 12:24:40. Gemini links have been rewritten to link to archived content

View Raw

More Information

âŹ…ïž Previous capture (2024-05-26)

âžĄïž Next capture (2024-07-08)

🚧 View Differences

-=-=-=-=-=-=-

Arrivée d'un blogroll

RĂ©digĂ© le 10 septembre 2020 - modifiĂ© le 5 septembre 2023. Étiquettes : blog openring

_Mise Ă  jour du 5 septembre 2023_ : Ne cherchez plus le blogroll en bas de mes articles,

il a été retiré au profit

d'une page avec plusieurs liens

issus de mes flux RSS.

Je laisse toutefois la démarche utilisée à l'époque si vous souhaitez mettre ça en place de votre cÎté.

---

L'idĂ©e de faire des liens vers d'autres blogs me trotte dans la tĂȘte depuis un moment.

AprÚs tout, le but des blogs c'est le partage, alors renvoyer vers d'autres adresses ça fait partie du truc.

Surtout si, de proche en proche, ça vous fait découvrir d'autres blogs qui vous intéressent.

Et les blogs indépendants, c'est toujours cool.

La question était : comment faire ça bien ?

Une réponse qui me satisfait est : avec

openring

.

Openring est un petit binaire codé en Go.

Vous lui donnez quelques flux RSS en entrĂ©e, il vous sort (via un pitit template) un html Ă  inclure oĂč vous voulez sur votre site statique.

L'outil aura prit soin d'aller chercher le dernier article de chaque flux puis d'extraire les URLs, le titre et le début du contenu.

VoilĂ  c'est tout.

Peu importe votre générateur.

Et ça c'est chouette !

J'ai décidé d'inclure ce résultat en bas des articles uniquement (pour le moment, on verra plus tard si ça change).

Je présente 3 sites issus d'une liste de mes RSS.

Il sont tirés au hasard via un script (appelé à la publication, mais pour tests on peut l'utiliser à la main),

honteusement piqué à Lord, que voici :

#!/usr/bin/env bash
# idée honteusement pompée sur
# https://lord.re/posts/181-deploiement-hugo/
set -euo pipefail

readonly BASEDIR=$(pwd)
readonly OPENRING="${HOME}/MesDocs/Developpement/openring"
selected_feeds=""

feeds=( $(awk '/openring/ { print $1 }' "${HOME}/.newsboat/urls") )

rand_feeds=( $(shuf -e "${feeds[@]}") )

choose_feeds(){
for index in 0 1 2
do
  selected_feeds="-s ${rand_feeds[$index]} $selected_feeds"
done
}

choose_feeds
echo $selected_feeds

${OPENRING}/openring -n 3 \
$selected_feeds \
< ${OPENRING}/in.html \
> ${BASEDIR}/layouts/partials/openring.html

Le fichier layouts/partials/openring.html est dans mon gitignore.

Vu qu'il va changer Ă  chaque publication, je ne vais pas m'embĂȘter Ă  le versionner.

Le template in.html de openring ressemble à ça, à date d'écriture de cet article :

<aside class="blogroll">
    <h3>Ailleurs sur le ouaibe francophone</h3>
    <ul>
        {{range .Articles}}
        <li>
            <h4><a href="{{.Link}}" target="_blank" rel="noopener">{{.Title}}</a></h4>
            {{.Summary}}
            <br/>
            Via <a href="{{.SourceLink}}">{{.SourceTitle}}</a>
            le {{.Date.Format "2006-01-02"}}
        </li>
        {{end}}
    </ul>
    <p class="attribution">
    Généré avec
    <a href="https://git.sr.ht/~sircmpwn/openring">openring</a>
    </p>
</aside>

Et donc, via un petit {{ partialCached "openring.html" . }} en bas du layout des posts, sous vos yeux Ă©bahis, une liste de 3 autres blogs.

J'utilise partialCached car le contenu ne change pas entre les pages.

J'ai failli oublier le soupçon de CSS :

.blogroll {border-bottom: 1px solid #b3b3b3; font-size:0.9rem;}
.blogroll ul {list-style:none; padding: 0px;}
.blogroll ul li {margin-bottom: 0.5rem;}
.blogroll .attribution {text-align: right; }
.blogroll h4 {margin-bottom:0px;}

Bons sauts dans les interouaibes !

-------------------------------

← Plus rĂ©cent : Compresser ses pages : Le retour

→ Plus ancien : Mise à jour du design

Aléatoire : Supprimer l'historique Nagios

Retour Ă  l'accueil

Contenu sous licence CC-BY-SA