Vous n'êtes pas identifié(e).
13 février 2024 Sortie de Dotclear 2.29
Bonjour tout le monde !
Voici une liste de billets triés par ordre de date décroissante :
billet 5
billet 4
billet 3 - Sélectionné
billet 2
billet 1 - Sélectionné
Je voudrais sur ma page d'accueil l'affichage suivant :
billet 3
Puis :
billet 5
billet 4
billet 2
billet 1
Si demain, je publie Billet 6, que je met le billet 5 comme sélectionné, je voudrais l'affichage suivant :
billet 5
billet 6
billet 4
billet 3
billet 2
billet 1
Donc deux boucles :
<tpl:Entries selected="1" lastn="1">
...
</tpl>
et
<tpl:Entries>
...
</tpl>
Avec la seconde qui gère les doublons : si le billet est déjà affiché dans la première boucle, on ne l'affiche pas ici.
Avec SPIP, y'a un attribut dans ce genre qui existe. Est-ce que Dotclear gère cette particularité ?
J'espère avoir été presque clair :/
Thème minimal : http://themes.dotaddict.org/galerie-dc2/details/minimal
Thème pure : https://github.com/nicosomb/dotclear-pure/tree/master
Hors ligne
Pas faisable facilement en tant que tel, malheureusement. J'ai créé un ticket qui permettra de faciliter la chose via un plugin, ce dernier devant cependant surcharger tpl:Entries.
Dyslexics have more fnu!
Hors ligne
Le thème Kameleon a une fonction incluse dans le bidule php (me souviens plus du nom du ficher mais c'est le seul du thème avec l'extension php) qui permet ça.
La documentation : http://doc.dotclear.net/2.0/fulltoc
Le module de recherche du forum : http://www.dotclear.net/forum/search.php ?
Hors ligne
Le thème Kameleon a une fonction incluse dans le bidule php (me souviens plus du nom du ficher mais c'est le seul du thème avec l'extension php) qui permet ça.
/* Permet de stocker la valeur vrai ou faux a un test */
public static function TrueOrFalse($attr)
{
if (isset($attr['true'])) {
$flag = 'true';
} else {
$flag = 'false';
}
return '<?php $dcKameleonTrueOrFalse = '.$flag.'; ?>';
}
/* Bloc de traitement conditionnel pour TrueOrFalse vrai ou faux */
public static function TrueOrFalseIf($attr,$content)
{
$if = '';
if (isset($attr['true'])) {
$sign = (boolean) $attr['true'] ? '' : '!';
$if = $sign.'$dcKameleonTrueOrFalse';
}
if ($if != '') {
return '<?php if('.$if.') : ?>'.$content.'<?php endif; ?>';
} else {
return $content;
}
}
ça ?
Thème minimal : http://themes.dotaddict.org/galerie-dc2/details/minimal
Thème pure : https://github.com/nicosomb/dotclear-pure/tree/master
Hors ligne
Vous n'êtes pas identifié(e).