Page mise à jour le 08/10/2017

Les informations données ici correspondent à la version la plus récente de mrvbNextDoor. Si vous utilisez une version plus ancienne, veuillez vous reporter au fichier "lisezmoi.txt" fourni avec votre version et installé dans le répertoire du plugin.

Liste des paramètres acceptés par intNextDoor et extNextDoor.

Nota : pour faciliter la lecture des valeurs par défaut, celles-ci sont notées ici entre crochet et en italique. [vide] = aucun caractère, [ ] = chaîne de caractères formée d'un unique espace... sans les crochets...

  • blogid (text) :
    identifiant(s) du/des blog(s) (séparés par une virgule).
    • Si absent : tous les blogs sont pris en compte,
    • La virgule "," sert de séparateur entre chaque élément de la liste,
    • le caractère "!" devant l'identifiant d'un blog l'exclut du listage.
    Par défaut : [vide] (tous les blogs).
  • category (text) :
    Liste des catégories servant de filtre pour le listage des billets.
    • Si absent : toutes les catégories sont prises en compte,
    • si vaut NULL : seuls les billets sans catégorie seront retenus.
    • La virgule "," sert de séparateur entre chaque élément de la liste,
    • le caractère "!" devant le nom d'une catégorie l'exclut du listage.
    Deux notations sont acceptées :
    • nom URLisé : attention à bien respecter la casse du nom.
    • n° d'ID : sera alors précédé du caractère "#".
    Par défaut : [vide] (toutes les billets, y compris ceux sans catégorie).
  • metatag (text) :
    mot-clé permettant de n'afficher que les billets qui ont ce mot-clé.
    Par défaut : [vide] (pas de filtrage).
  • selected (0|1) :
    permet de ne retenir que les billets ayant le statut "sélectionné".
    Par défaut : [0] (pas de filtrage).
  • password (no|also|only) :
    mise en place d'un filtre sur les billets avec ou sans protection par mot de passe
    • si "only" : seuls les billets avec mot de passe sont listés,
    • si "also" : les billets avec mot de passe sont inclus dans la liste,
    • sinon : les billets avec mot de passe ne sont pas listés.
    Par défaut : [vide] (pas de listage des billets ayant un mot de passe).
  • listurl (text) :
    filtre sur une liste de billets (chaque billet désigné par son url locale)
    • une ou plusieurs url séparées par des virgules,
    • si vide alors pas de filtre,
    Par défaut : [vide] (pas de filtrage).
  • typepost (text) :
    précise le type de billet à lister et le type d'URL pour appeler ce type de billet
    • format typ/url avec un slash comme séparateur
    • si url absent alors url = typ
    • Peut être une liste de couples typ/url séparés par des virgules.
      Exemple : [page/pages, post/post, related/static].
    si vide, est équivalent à [post/post]
  • maxitems (text) :
    nombre maximum de billets à lister
    • si [vide], alors pas de limite,
    • si [x-y], alors "x" billets après les "y" plus récents.
    Par défaut : [8].
  • orderby (asc|desc) :
    ordre de listage des billets : 'asc' (plus ancien en premier) ou 'desc' (plus récent en premier).
    si absent ou différent de 'asc'/'desc' alors orderby = 'desc'.
  • typlist (ul|div|) :
    type de format de la liste :
    • si 'ul' : liste à puce (<ul><li>)
    • si 'div' : bloc <div>
    • si '' : aucun format ne sera appliqué
  • formdate (text) :
    formatage de la date.
    Par défaut : [%d/%m/%Y %Hh%M].
    Se reporter à cette page pour la syntaxe à utiliser.
  • setlocal (text) :
    localisation du format de la date. Une ou plusieurs valeurs séparées par des virgules, par défaut : [vide].
    (plus d'infos en bas de page)
  • titlemax (text) :
    longueur maximum de chaque titre de billet.
    La longueur réelle dépendra des mots utilisés car aucun d'entre eux ne sera tronqué.
    Par défaut : [0] (pas de troncature).
  • settext (text)
    paramétrage de %TEXT%.
    Par défaut : [from=full, length=100, cut=[&hellip;]].
    Se reporter à cette page pour la syntaxe à utiliser.
  • setimage (text)
    paramétrage de %IMAGE%.
    Par défaut : [link=none, from=full, start=1, length=1].
    Se reporter à cette page pour la syntaxe à utiliser.
  • setnbcomm (text)
    paramétrage de %nbcomm[]%, %NBCOMM[]% et %NBCOMM:COMM[]%.
    Par défaut : [none="no comments",one="one comment",more="%d comments"].
    Se reporter à cette page pour la syntaxe à utiliser.
  • formitem (text) :
    formatage de chaque item.
    Par défaut : [%DATE% : %BLOG:BLOG% - %TITLE:POST%].
    Se reporter à cette page pour la syntaxe à utiliser.
  • titlecut (text) :
    texte indiquant que le titre du billet a été tronqué.
    Ne sera affiché que si le titre est réellement tronqué.
    Par défaut : [[&hellip;]].
  • noexcerpt (text) :
    affiche un texte de remplacement si l'extrait est vide
    par défaut : [vide].
  • readmore (text)
    texte invitant à lire la suite du billet.
    Sera affiché après l'extrait si l'extrait existe et si le contenu du billet n'est pas demandé dans la chaîne de formatage.
    Par défaut : [vide].
  • nolist (0|1) :
    utilisation ou pas d'une liste à puce (balises html <ul></ul> et <li></li>)
    par défaut : [0] (liste à puce).

Les valeurs affectées aux différents paramètres doivent être placées entre 'simples quotes' et terminées par une virgule (syntaxe obligatoire pour déclarer les éléments d'un tableau en PHP).

Le format par défaut de setnbcomm est traduit automatiquement de l'anglais dans la langue du blog uniquement avec la fonction intNextDoor.

fonction intNextDoor :

Voici un exemple de syntaxe possible lors de la mise en place dans une page connexe (plugin related) d'un blog. Attention ! Le chemin dans l'include est à adapter à votre propre environnement :

<div class="mrvbNextDoor">
  <?php
    $attr = array(
      'blogid'   => 'default, private',
      'maxitems' => '100',
      'formdate' => '%d/%m/%Y',
      'formitem' => '%DATE% : %TITLE:POST%',
    );
    include_once(DC_ROOT.'/plugins/mrvbNextDoor/interne.php');
    intNextDoor($attr);
  ?>
</div>

Dans cet exemple, le répertoire des plugins est supposé être un sous-répertoire de dotclear (DC_ROOT). Si le répertoire qui accueille le plugin mrvbNextDoor est ailleurs, pensez à modifier le chemin de l'appel au fichier interne.php en conséquence.

fonction extNextDoor :

Cette fonction est plus délicate à utiliser car, contrairement à la fonction précédente, il est nécessaire d'indiquer au fichier externe.php (via la constante DC_ROOT) le chemin d'accès au répertoire accueillant Dotclear, calculé à partir de l'endroit où est appelée la fonction (page externe contenant le script).

Prérequis concernant la page dans laquelle vous souhaiter utiliser cette fonction :

  • il est nécessaire que cette page puisse accéder à la base de données alimentant le(s) blog(s),
  • elle doit appartenir au même domaine principal ou dans un sous-domaine du même domaine principal,
  • PHP5 doit être actif dans le répertoire où elle se trouve.

Exemple de syntaxe possible lors de la mise en place dans une page externe :

<div class="mrvbNextDoor">
<?php
  if (!defined('DC_ROOT')) {
    define('DC_ROOT', dirname(__FILE__).'/dc2');
  }
  $attr = array(
    'blogid'   => 'default',
    'maxitems' => '40',
    'formdate' => '%d/%m/%Y',
    'formitem' => '%DATE% : %TITLE:POST%',
  );
  include_once(DC_ROOT.'/plugins/mrvbNextDoor/externe.php');
  extNextDoor($attr);
?>
</div>

Dans le cas où vous utilisez également l'extension myUrlHandlers (et uniquement dans ce cas), vous devez ajouter le paramètre

'modifurl'  => '1',

Exemple :

<div class="mrvbNextDoor">
<?php
  if (!defined('DC_ROOT')) {
    define('DC_ROOT', dirname(__FILE__).'/dc2');
  }
  $attr = array(   
   'maxitems' => '10',
   'formdate' => '%d/%m/%Y',
   'formitem' => '%DATE% : %TITLE:POST%',
   'modifurl' => '1',
  );
  include_once(DC_ROOT.'/plugins/mrvbNextDoor/externe.php');
  extNextDoor($attr);
?>
</div>

Dans les deux exemples précédents, deux lignes doivent retenir particulièrement votre attention :

  • D'abord la ligne
    define('DC_ROOT', dirname(__FILE__).'/dc2');
    Dans cet exemple, "dc2" est le répertoire où est installé Dotclear. Il est ici au même niveau que l'endroit où est utilisé le script (endroit connu grâce à la fonction PHP "dirname(__FILE__)").
  • Ensuite la ligne
    include_once(DC_ROOT.'/plugins/mrvbNextDoor/externe.php');
    Ici, le répertoire des plugins est un sous-répertoire de "dc2" (dc2/plugins). Si le répertoire qui accueille le plugin mrvbNextDoor est ailleurs, pensez à modifier le chemin de l'appel au fichier externe.php (par rapport à l'endroit où se trouve Dotclear tel que défini dans DC_ROOT) en conséquence.

Deux précisions concernant l'usage du script dans une autre page, l'affichage des caractères accentués et l'utilisation dans une autre langue que l'anglais :

  • Si vous souhaitez également utiliser cette fonction dans une autre page placée à un autre niveau de l'arborescence de votre site, il vous suffit de modifier le chemin défini dans la constante "DC_ROOT" lorsque vous ajoutez le script dans cette autre page...
  • Contrairement aux titres des billets dont les caractères accentués s'affichent correctement dans une page qui n'est pas en UTF-8, le contenu des billets ne fait l'objet d'aucun traitement particulier et conserve le jeu de caractères utilisé par Dotclear.

    Si les caractères accentués ne sont pas correctement affichés dans votre page, vous devez en modifier le Content-Type (dans le bloc <head>) en remplaçant 'charset=ISO-8859-1' (ou tout autre valeur) par 'charset=UTF-8'.

    Cela nécessite alors de reprendre tous les caractères accentués présents dans votre page à l'aide d'un éditeur acceptant l'encodage en UTF8.

  • le format par défaut de setnbcomm n'est pas traduit automatiquement de l'anglais dans la langue du blog. ll faut personnaliser manuellement "setnbcomm".

A propos de setlocal :

Sont principalement impactés par le contenu de "setlocal" les formats de date %a, %A, %b et %B. Ce contenu correspond à celui utilisé par la fonction 'setlocale' du langage PHP. Son rendu dépendra du système d'exploitation du serveur web. Plusieurs valeurs peuvent être saisies, séparées par des virgules.

Exemple :

Supposons que setlocal vaut 'fra, fr_FR, toto, english'. Si le serveur ne reconnaît pas 'fra', alors il essaye de prendre en compte 'fr-FR', si 'fr-FR' lui est inconnu, alors... etc...

Quelques termes acceptés tant par Windows que par Linux pour 'setlocal' => '####' où '####' sera remplacé par...

  • 'french' pour le français,
  • 'german' pour l'allemand,
  • 'english' pour l'anglais,
  • 'spanish' pour l'espagnol,
  • 'italian' pour l'italien.

Pour plus d'infos, je vous invite à consulter la doc PHP (fonction 'setlocale'), la norme ISO639 et la liste des codes reconnus par Windows.