?attribuer un 'délai de péremption' aux articles d'une catégorie?

erminaermina Member
mars 2011 modifié dans Entraide
Bonjour à tous,

j'aimerai pouvoir afficher, via la page home.php, seulement certaines catégories (ce pour quoi j'ai découvert plusieurs méthodes au fil des documentations), et pour ces catégories, n'afficher que les articles dont la date de publication correspond à certains critères (par exemple, afficher seulement les articles portant le numéro de la semaine courante).

J'ai pour l'instant tenté infructueusement deux façons de faire (en intervenant uniquement dans le fichier home.php de mon thème):

La première idée utilisait
$plxShow->artDate('#num_year(4)-#num_month-#num_day');
, mais le résultat ne semble pas assignable à une variable ?

La seconde idée était une variation autour de la méthode "Lister les articles par catégorie dans une page statique" décrite dans le wiki, qui me permet de récupérer une variable $art_date, le problème étant que cette méthode ne permet pas (tout du moins n'ai-je pas trouvé comment) d'afficher le contenu des articles.

Mes notions de php ne semblent pas suffisantes pour résoudre ceci, dans un délai raisonnable, par la simple lecture du core.

Peut-être existe-t-il un moyen déjà documenté qui m'aurait échappé?
Merci de votre aide.

Réponses

  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour Ermina

    Sur la page de rédaction d'un article, au niveau de la date de publication, il suffit de mettre une date future.
    Ton article ne sera publié et visible qu'à partir de la date que tu auras renseigné.
    A toi donc de planifier les dates dates publications de tes articles.

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • StéphaneStéphane Member, Former PluXml Project Manager
    Je viens de relire ton post. j'ai peut etre mal compris ta demande.

    tu veux qu'un article ne soit publié qu'entre 2 dates.
    Qu'il soit visible à partir d'une date et qu'il ne soit plus visible apres une autre

    c'est ça ?

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • erminaermina Member
    mars 2011 modifié
    oui, c'est bien ça.
    Il s'agit des articles que je classe dans une catégorie type "truc de la semaine", et qui seraient mis en avant visuellement.
    Leur contenu n'est valable que pour la semaine en cours.
    La problématique étant que certaines semaines, il peut y avoir 3 ou 4 articles, et certaines autres, aucun: d'où l'impossibilité d'utiliser la fonction lastArtList en limitant à un nombre d'articles précis.

    Au moment de la rédaction des articles, on fixe effectivement la date de publication au lundi de la semaine concernée.
    Ensuite, à partir du moment où je peux récupérer la date d'un article sous forme YYYY-mm-dd, je sais la convertir en numéro de semaine, et il n'y a plus qu'à faire un affichage conditionnel en comparant avec le date('W') renvoyé par le serveur.
  • erminaermina Member
    mars 2011 modifié
    hé bien en fait, j'ai trouvé comment faire (comme quoi, un café et 10 minutes de pause sont efficaces).

    J'utilise le code proposé dans Lister les articles par catégories....

    Dans la dernière partie, j'ajoute une ligne:
    # On boucle sur les articles de la categories
    			while(list($null, $art) = each($v)) {
    				$art_num = intval($art['numero']);
    				$art_url = plxUtils::strCheck(($art['url']));
    				$art_title = plxUtils::strCheck(($art['title']));
    				$art_date = plxDate::dateIsoToHum($art['date'], $format_date);
    //------> ajout:           $art_content = plxUtils::strRevCheck(($art['content']));
    				echo '<li>'.$art_date.': <a href="'.$plxShow->plxMotor->aConf['racine'].'?article'.$art_num.'/'.$art_url.'">'.$art_title.'</a></li>'; 
    			}
    
    puis il suffit de placer un echo $art_content pour avoir le contenu de l'article.

    En tout cas, merci pour ce super CMS et pour la réactivité.
    Et désolé si ce topic est un peu confus, je suis pas bien réveillé :)
Connectez-vous ou Inscrivez-vous pour répondre.