Vous connaissez la balise #LESAUTEURS ? non ? On peut lire ici qu’elle compte parmis les balises calculées et qu’elle :
#LESAUTEURS affiche les auteurs de cet article, avec lien vers leur propre page publique, afin de pouvoir directement leur écrire ou de consulter la liste des articles qu’ils ont publié. Ceci depuis [SPIP 1.9], car auparavant, il s’agissait d’un lien vers leur adresse e-mail. Cela évite de créer une boucle AUTEURS pour obtenir le même résultat.
Alors, on se dit qu’une balise #LESADMINISTRATEURS qui afficherait la liste des administrateurs d’une rubrique, ce serait pas mal. ça éviterait de créer une boucle...
...enfin... une boucle, c’est vite dit, la gestion des « admins restreints » est telle que ça devient vite le bazar pour mettre ça en boucle... mais bon, elle existe et la voici :
La Boucle
Une certaine Elodie l’a réalisé pour vous sur ce site : Afficher les administrateurs d’une rubrique et vous pouvez lui dire merci !
Une inclusion de squelette et le tour est joué.
Toutefois, si vous préférez une balise, le code ci-dessous fait la même chose. Sachez qu’avec ce code, si vous placez #LESADMINISTRATEURS en dehors d’une boucle, vous aurez la liste des admins du site (ceux qui ne sont pas restreints) et que dans une boucle, vous aurez en plus les admins restreints.
Le code
dans mes_fonctions.php [1]
Et alors, pourquoi pas un modèle ?
Bien sur, on pourrait envisager un modèle appelé directement ou par la balise ci-dessus. Ce modèle pourrait être directement inspiré des boucles d’Elodie... à vous de jouer ;-)



Vos commentaires
# Le 8 mars 2007 à 13:00, par Paladin
En réponse à : Balise #LESADMINISTRATEURS
Superbe ! Grand merci pour cette contrib.
Une variante #LESINVITES qui permet d’afficher la liste ... des invités :
<?php
// Ajout de la balise #LESINVITES
// Donne la liste complète des invités
function balise_LESINVITES($p){
$p->code = "sql_invites('".$p->boucles[$p->id_boucle]->sql_serveur."')";
return ($p);
}
function sql_invites($serveur='') {
$invites = "";
$result_invites = spip_abstract_select(
array('auteurs.id_auteur', 'auteurs.nom'), // SELECT
array('auteurs' => 'spip_auteurs'), // FROM
array("auteurs.statut='6forum'"), // WHERE
'',array(),'','',array(),'','',$serveur);
while($row_invite = spip_abstract_fetch($result_invites, $serveur)) {
$invites[] =
"<p>"
.typo($row_invite['nom'])
."</p>\n";
}
return (!$invites) ? "" : join($invites, " ");
}
?>
# Le 8 mars 2007 à 14:28, par Paladin
En réponse à : Balise #LESADMINISTRATEURS
Précision : les invités ici sont des visiteurs inscrits.
Répondre à ce message
# Le 27 février 2007 à 09:24, par marabbeh
En réponse à : Balise #LESADMINISTRATEURS
Pour comprendre cette contrib, il faut être coredev, donc je n’en vois pas l’intérêt...
Par exemple, que font :
- champ_sql
- spip_abstract_select, spip_abstract_fetch ?
# Le 28 février 2007 à 13:16, par un coredev
En réponse à : Balise #LESADMINISTRATEURS
l’intérêt, c’est de l’utiliser si tu en as besoin. De l’étudier si tu as envie d’apprendre...
c’est la première fois que je me prends ’coredev’ comme une insulte :)
sinon, rtfm, il y a un site de doc technique, à bon entendeur
Répondre à ce message
# Le 15 février 2007 à 20:22, par vianatalia
En réponse à : ça marche
Ça marche, c’est assez génial, mais pour qu’il n’affiche, dans une boucle, que les admins de la rubrique et pas ceux du site entier, il a fallu que j’enlève la partie /3 : enfin les admins du site
Tout ça sous spip 1.9.1
Merci pour cette contrib :-)
Répondre à ce message