Outils pour utilisateurs

Outils du site


devweb:cms:dokuwiki (lu 7301 fois)

Dokuwiki

Afficher un compteur de lecture

source : https://www.dokuwiki.org/tips:viewcounter

Ajouter le fichier tpl_functions.php dans votre theme lib/tpl/monTheme/

<?
/**
 *  EDMC73 ajout de ce code pour afficher un compteur de page
 *
 *
 * @author http://www.dokuwiki.org/tips:viewcounter
 */
function tpl_newpageinfo(){
    global $lang;
    global $ID;
 
    $pinfo = tpl_pageinfo(true);
    if ($pinfo === false) return false;
 
    if($_GET['do']!='edit'){
        $viewcnt = p_get_metadata($ID, "viewcnt");
        if ($viewcnt == null) $viewcnt = 0;
        $viewcnt++;
        p_set_metadata($ID, array('viewcnt' => $viewcnt));
    }
    $pinfo = str_replace(' &middot; ', ' ('.$viewcnt.' '.tpl_getLang('views').') &middot; ', $pinfo);
    echo $pinfo;
}
function tpl_cptpageinfo(){
    global $lang;
    global $ID;
 
    $viewcnt = p_get_metadata($ID, "viewcnt");
    if ($viewcnt == null) $viewcnt = 0;
 
    $pinfo = $viewcnt;
    echo "lu $pinfo fois";
}
 
?>

Modifier le main.php dans ce même répertoire.

Après

if (!defined('DOKU_INC')) die(); /* must be run from within DokuWiki */

Ajouter

@require_once(dirname(__FILE__).'/tpl_functions.php'); /* include hook for template functions */

Remplacer

<div class="docInfo"><?php tpl_pageinfo() ?></div>

Par

 <div class="docInfo"><?php tpl_newpageinfo() ?></div>

Ajouter où vous le souhaitez le code suivant pour afficher le compteur

<?php tpl_cptpageinfo() /* Compteur de lecture */ ?>

Plugins

Mettre à jour

Un petit script pour mettre à jour son dokuwiki en quelques secondes

update_dokuwiki
#!/bin/bash
# Permet de mettre à jour son dokuwiki
#
 
# Répertoire ou se trouve le wiki
rep=/var/www/
# Nom du répertoire contenant le wiki
wiki=wiki
 
# - On fait un backup du wiki
cd $rep
rsync -a $wiki/ ${wiki}_`date +%Y%m%d_%H%M%S`
 
# - On télécharge la dernière version stable de dokuwiki
wget http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
 
# - On extrait tous les fichiers dans le wiki en écrasant les fichiers présents
tar -C $wiki -xzvf dokuwiki-stable.tgz --strip-components=1
 
# - On supprime le fichier téléchargé
rm dokuwiki-stable.tgz
 
# - On purge les fichiers obsolètes
cd $wiki
wget -q -O- https://github.com/splitbrain/dokuwiki/raw/stable/data/deleted.files | grep -Ev '^($|#)' | xargs -n 1 rm -irf
 
# - On purge le cache
touch conf/local.php
 
# - On met à jour les messages d'alertes
rm data/cache/messages.txt
touch doku.php

En cas de problème, utilisez la copie de backup.

devweb/cms/dokuwiki.txt · Dernière modification: 04-02-2015 11:19 de edmc73