dokuwiki
Table des matières
Dokuwiki
Le wiki que vous êtes en train de lire fonctionne sous DokuWiki. C'est un wiki sans base de données, très rapide et facile à mettre en place. Voici quelques informations concernant Dokuwiki que je me garde sous le coude.
Astuces en vrac
- Le gestionnaire de fichiers n'autorise l'upload que des fichiers d'un certain type (png, jpg…). Pour autoriser l'upload d'autres types, il faut créer le fichier
/conf/mime.local.conf
et y ajouter les types voulus. Exemple:
exe application/octet-stream
- Supprimer une page: Comme vous l'aurez remarqué, pas de bouton "supprimer cette page". En fait il faut faire "editer la page", sélectionner tout le texte, supprimer et faire "Enregistrer". Enregistrer un texte vide a pour effet de supprimer la page.
- Déplacer une page: Il n'est pas actuellement possible de déplacer un document d'un namespace à un autre, encore moins en corrigeant automatiquement tous les liens qui pointent dessus. Il faut re-créer la page. C'est un des aspects un peu lourds de DokuWiki (même si c'est pas bien grave).
- DokuWiki chez free.fr: DokuWiki ne fonctionne tel quel pas chez Free (*.free.fr). Il est nécessaire de le patcher. Les infos devraient se retrouver en googlant.
Personnalisation
- Largeur à l'écran:
- Solution 1 : Aller dans l'administration > Paramètres de style du thème (template) > Largeur du site complet ou __site_width__ > mettre 100%.
- Solution 2 : Patcher DokuWiki
- Dans
/dokuwiki/lib/tpl/dokuwiki/style.ini
, changer:__site_width__ = "75em" ; @ini_site_width
en
__site_width__ = "100%" ; @ini_site_width
puis allez dans l'écran de configuration et re-validez le (Cela va purger le cache). Et voilà !
- Changer les CSS de votre DokuWiki.
- Pour cela, pas besoin de toucher au thème: Contentez-vous de créer un fichier
/conf/userstyle.css
et mettez-y ce que vous voulez, par exemple:body { font-family: "Droid Sans","Noto Sans","Ascender Uni","Linotype Aroma","FF Kievit","Source Sans","Open Sans","Museo Sans","Myriad","Camphor","Corbel","Frutiger","Vectora","Calibri","Ubuntu","Roboto",sans-serif; }
- Cette feuille de style survivra aux mises à jour DokuWiki.
- (Je ne suis pas fan d'Arial)
- Retirer les marges gauche/droite sur les petits écrans:
- Dans mon
userstyle.css
, j'ajoute:@media screen and (max-width: 700px) { #dokuwiki__site > .site { padding-right: 0px; padding-left: 0px; } }
- Pour voir le résultat, diminuez la largeur de la fenêtre du navigateur: En dessous d'une certaine largeur, ça retirer les marges gauche et droite. C'est plus sympa pour les petits écrans.
Personnaliser une page
Il m'arrive d'avoir besoin/envie de personnaliser une page unique. C'est assez facile: Vous pouvez inclure du code HTML directement dans votre page wiki (pensez à activer l'option dans l'administration du wiki) avec les balises <html>
/</html>
. Exemple:
- Un dégradé de couleurs en fond (page Jeux) avec:
<html> <style type="text/css"> body { /* Généré vite fait avec https://cssgradient.io/ */ background: rgb(253,255,95); background: linear-gradient(180deg, rgba(253,255,95,1) 0%, rgba(151,135,238,0.9906163148853291) 13%, rgba(206,143,183,1) 23%, rgba(255,155,155,1) 36%, rgba(253,255,95,1) 50%, rgba(151,135,238,1) 69%, rgba(206,143,183,1) 83%, rgba(253,255,95,1) 100%); } </style> </html>
- Un motif répétitif en fond, et ajustement de la transparence du bandeau (RimWorld) avec:
<html> <style type="text/css"> body { background: url("/galerie/photos/Wallpapers/Textures/red_mud_stones_diff_1k-lighter.jpg") repeat, #b48766; } .pad { background-color: rgb(255,255,255,0.5); } </style> </html>
- Personnaliser les sections (h1,h2…) (Linux Mint) avec:
<html> <style type="text/css"> h2 { padding: 5px 5px 5px 15px; background: linear-gradient(to bottom, rgba(226,226,226,1) 0%, rgba(219,219,219,1) 50%, rgba(209,209,209,1) 51%, rgba(254,254,254,1) 100%); border-radius: 0.8em; } h3 { padding: 5px 5px 5px 15px; margin-left: 20px; background: linear-gradient(to bottom, rgba(226,226,226,1) 0%, rgba(219,219,219,1) 50%, rgba(209,209,209,1) 51%, rgba(254,254,254,1) 100%); border-radius: 0.8em; font-style: italic; } </style> </html>
Plugins intéressants
- Discussion: Permet d'ajouter un fil de discussion dans un article de Dokuwiki. Ajoutez juste
~~DISCUSSION~~
dans le corps de l'article. - Note: Pour mettre en valeur des notes, warning, etc. Simple et pratique.
- Exemple:
Ceci est une note.
- Wrap, pratique pour encadrer des informations (et plus souple que Note).
- Hidden: collapse une zone qu'on peut agrandir en cliquant dessus (genre "spoiler"). Pratique pour publier de longs texte ou sources dans une page sans avoir à faire une page à côté).
- Exemple:
- Draw.io: Permet de dessiner des schémas directement dans vos pages ! Fantastique.
- Démonstration:
- Après édition, ça génère directement un png.
- Astuce: Le PNG contient aussi le document Draw.io XML source: Vous pouvez donc re-cliquer sur votre schéma et le modifier.
- Le site draw.io ne sert qu'à servir une application statique: Elle s'exécute dans votre navigateur, et vos données ne vont que entre votre navigateur et DokuWiki (elles ne passent pas par le site draw.io).
- (Draw.io est un logiciel libre que vous pouvez même héberger sur votre serveur.)
- Keyboard: permet d'afficher les touches de clavier. Pratique pour les tutoriels.
- Exemple: Ctrl+C
- Customiser l'apparence des touches comme ceci K, dans
/conf/userstyle.css
, ajouter à la fin:kbd { background-color: #F2F2F2 !important; border-style: outset; border-width: 3px; border-radius: 0.3em; padding : 0px 2px 0px 2px !important; }
- Notez que par défaut ce plugin fait des substitutions et met en majuscules. Entourez votre texte de simple quotes pour qu'il ne soit pas modifié. Exemples: C-c-Right donne Ctrl+C+→, t donne T, mais 't' donne t.
- LogLog: Journal des connexions et tentatives de connexion.
- tokenbucketauth: Banni une adresse IP si elle fait trop de tentatives de connexion sur le formulaire de login.
- Astuce: Si vous vous êtes vous-même bloqué(e), voici comment réinitialiser le blocage (je me note ça, car j'oublie tout le temps), supprimez les 3 fichiers suivants:
- /dokuwiki/data/cache/block.pbf
- /dokuwiki/data/cache/lock.pbf
- /dokuwiki/data/cache/users.pbf
- UnusedMedia: Affiche la liste des pages orphelines et des médias non utilisés.
- langdelete: Permet de supprimer les fichiers de langue inutile de votre wiki (pour l'alléger).
- Page Redirect, pratique pour rediriger vos anciennes pages vers les nouvelles.
- Anchor, permet de poser des ancres html (#ancre) où on veut dans une page (et pas seulement là où DokuWiki a automatiquement mis les ancres liés aux titres de section). Syntaxe:
{{anchor:NomDeLAncre}}
Bidouilles
- Masquer les liens "Gestionnaire Multimédia / Plan du site" pour les utilisateurs qui ne sont pas admin: Dans
wiki/lib/tpl/dokuwiki/tpl_header.php
, modifier:<div id="dokuwiki__sitetools"> <h3 class="a11y"><?php echo $lang['site_tools']; ?></h3> <?php tpl_searchform(); ?> + <?php if (auth_isadmin()): ?> <div class="mobileTools"> <?php echo (new \dokuwiki\Menu\MobileMenu())->getDropdown($lang['tools']); ?> </div> <ul> <?php echo (new \dokuwiki\Menu\SiteMenu())->getListItems('action ', false); ?> </ul> + <?php endif ?> </div> </div>
- Par défaut, toutes les miniature et images réduite créées par DokuWiki ne sont pas en jpeg progressif. Pour forcer en progressif, il faut:
- Modifier le fichier
inc/media.php
en ajoutant la ligne suivant:--- media.php.original 2020-12-03 10:07:52.685477718 +0100 +++ media.php 2020-12-03 10:25:34.384486237 +0100 @@ -2423,6 +2423,7 @@ if(!function_exists('imagejpeg')){ $okay = false; }else{ + imageinterlace($newimg,true); $okay = imagejpeg($newimg, $to, $conf['jpg_quality']); } }elseif($ext == 'png') {
- Puis en vidant le cache (supprimez tout le contenu du répertoire
data/cache
(mais sans supprimer le répertoire lui-même).
- Couper l'accès au gestionnaire de médias pour les utilisateurs non-admin: à faire
- Couper l'accès à l'historique sauf pour l'utilisateur admin: à faire
dokuwiki.txt · Dernière modification : 2022/03/01 13:52 de sebsauvage