Quelques articles non datés possibles ?

Bonjour,

Je souhaiterais que certains (et seulement certains) articles soient "non
datés".

Sur le tutorial d'Uzine je trouve :

"Pourquoi ces crochets ? supposons que votre base contient des articles
datés et d'autres non datés. La variable #DATE vaut « 2001-07-01 10-53-01 »
(date au format mySQL) dans le premier cas, et « 0000-00-00 00-00-00 » dans
le second. Pour afficher la date dans un joli (?) cadre, on va utiliser,
dans le squelette, les lignes suivantes :
[<TABLE border=1><TR><TD>
(#DATE|affdate)
</TABLE>]
Ici le filtre |affdate affiche la date au format « 1er juillet 2001 », et
renvoie une chaîne vide si la date est « 0000... ». Les crochets délimitent
ce qu'il faut afficher si le resultat entre parenthèses n'est pas une chaîne
vide.
Résultat : seuls les articles datés provoquent l'affichage d'un tableau
contenant la date. Un squelette bien construit définira précisément ce qu'il
faut afficher ou pas en fonction du contenu... Les filtres servent aussi à
ça."

Le problème :
Si l'on peut sélectionner (dans l'interface privée) pour la date de
publication d'un article :
jour : NC
mois : NC
Pour ce qui concerne l'année : l'option NC n'existe pas (minimum 1996)

Comment faire pour que la date soit " 0000... " ?
Une idée pour faire en sorte que certains articles soient "non datés" sans
refaire à chaque fois un squelette spécifique ?

Claude

Dans ecrire/articles.php3, ligne 697 :

function afficher_annee($annee){
    // Cette ligne permettrait de faire des articles sans date de publication
    // my_sel("0000","n.c.",$annee);
    ...

il suffit de supprimer les commentaires devant my_sel("0000"...)

(Je ne sais pas pourquoi le code est comme ça... c'est peut-être un oubli)

@ Speltz <speltz@villers.com> :

Je souhaiterais que certains (et seulement certains) articles soient "non
datés".
Le problème :
Si l'on peut sélectionner (dans l'interface privée) pour la date de
publication d'un article :
jour : NC
mois : NC
Pour ce qui concerne l'année : l'option NC n'existe pas (minimum 1996)

-- Fil

Merci Fil,

Cela fonctionne et permet donc de ne pas faire apparaître la date quand
cette dernière n'est pas connue.

Cela sera-t-il "en standard" dans la prochaine version ?
Cela éviterait de devoir à chaque fois modifier le fichier
ecrire/articles.php3, ligne 697.

Mais j'ai maintenant un petit(?) problème de tri.

Je souhaiterais que les articles non datés (grâce à ta correction) soient
triés {par num titre}.
J'ai mis un numéro sur ces articles (100. 200. 300. etc.). Cela fonctionne.
Pour ce qui est des articles qui sont datés, le tri {par date}{inverse}
fonctionne également très bien.

Je ne parviens pas à combiner les 2 tris :
Je souhaiterais que les articles numérotés apparaissent en tête {par num
titre} suivis des articles datés {par date}{inverse}

J'ai essayé différentes combinaisons :

<BOUCLE_meme_rubrique(ARTICLES){id_rubrique}{doublons}{0,100}{par
date}{inverse}{par num titre}>
Elle trie {par num titre} mais ignore le {par date}{inverse}.

<BOUCLE_meme_rubrique(ARTICLES){id_rubrique}{doublons}{0,100}{par num
titre}{par date}{inverse}>
Elle trie {par date}{inverse} mais ignore le {par num titre}.

<BOUCLE_meme_rubrique(ARTICLES){id_rubrique}{doublons}{0,100}{inverse}{par
num titre}{par date}>
Elle trie {par date} mais ignore le {par num titre} et ignore également
{inverse}.

En bref ... est ce qu'une solution simple à mon problème existe ? Plus
généralement comment combiner les tris quand il y a plusieurs réponses sur
l'un des critères ?

Merci encore aux développeurs et bonne soirée à tous.

Claude

-----Message d'origine-----
De : Fil [mailto:fil@rezo.net]
Envoyé : vendredi 27 septembre 2002 23:02
À : Speltz
Cc : spip@rezo.net
Objet : Re: [Spip] Quelques articles non datés possibles ?

Dans ecrire/articles.php3, ligne 697 :

function afficher_annee($annee){
    // Cette ligne permettrait de faire des articles sans date de
publication
    // my_sel("0000","n.c.",$annee);
    ...

il suffit de supprimer les commentaires devant my_sel("0000"...)

(Je ne sais pas pourquoi le code est comme ça... c'est peut-être un oubli)

@ Speltz <speltz@villers.com> :

Je souhaiterais que certains (et seulement certains) articles soient "non
datés".
Le problème :
Si l'on peut sélectionner (dans l'interface privée) pour la date de
publication d'un article :
jour : NC
mois : NC
Pour ce qui concerne l'année : l'option NC n'existe pas (minimum 1996)

-- Fil

Tu peux essayer de trier {par machin,truc}, mais tout n'est pas très bien
géré sur ce plan là. Il faut voir...

Au pire, tu dates les "non datés" du 1er avril 2007, et tu filtres cette
date dans l'affichage.

@ Speltz <speltz@villers.com> :

Je ne parviens pas à combiner les 2 tris :
Je souhaiterais que les articles numérotés apparaissent en tête {par num
titre} suivis des articles datés {par date}{inverse}

-- Fil

Fil,

{par num titre,par date}{inverse} ne fonctionne pas et renvoie le message
d'erreur suivant :

<BOUCLE_meme_rubrique>
Erreur dans la requête envoyée à MySQL :
SELECT
articles.id_article,articles.id_rubrique,articles.id_secteur,articles.surtit
re,articles.titre,articles.soustitre,articles.date,articles.date_redac,artic
les.visites,articles.popularite,articles.statut,articles.accepter_forum,0+ar
ticles.titre AS num FROM spip_articles AS articles WHERE articles.id_article
NOT IN (0,401) AND articles.id_rubrique='9' AND articles.date<NOW() AND
articles.statut='publie' ORDER BY num,par date DESC LIMIT 0,100

You have an error in your SQL syntax near 'date DESC LIMIT 0,100' at line

1
</BOUCLE_meme_rubrique>

Au pire, tu dates les "non datés" du 1er avril 2007, et tu filtres cette
date dans l'affichage.

Le problème, c'est que je ne sais pas comment le faire ce filtre d'affichage
sur une date.
Si on y parvient, je suppose que cela fonctionnerait également pour la date
"00-00-0000" ?

Claude

-----Message d'origine-----
De : Fil [mailto:fil@rezo.net]
Envoyé : samedi 28 septembre 2002 21:59
À : Speltz
Cc : spip@rezo.net
Objet : Re: [Spip] Quelques articles non datés possibles ?

Tu peux essayer de trier {par machin,truc}, mais tout n'est pas très bien
géré sur ce plan là. Il faut voir...

Au pire, tu dates les "non datés" du 1er avril 2007, et tu filtres cette
date dans l'affichage.

@ Speltz <speltz@villers.com> :

Je ne parviens pas à combiner les 2 tris :
Je souhaiterais que les articles numérotés apparaissent en tête {par num
titre} suivis des articles datés {par date}{inverse}

-- Fil

{par num titre,par date}{inverse} ne fonctionne pas et renvoie le message

Essaie peut-être {par num titre, date}{inverse}

-- Fil

Super, ça marche !

Merci beaucoup.

Mais où vas-tu chercher tout cela ? Comment toi et tes compères trouvez-vous
le temps ...
J'aimerais beaucoup avoir votre recette :slight_smile:

La petite modif que tu m'as conseillée pour pouvoir mettre des articles
non datés sera-t-elle dans la future version de Spip ?

Claude

-----Message d'origine-----
De : Fil [mailto:fil@rezo.net]
Envoyé : dimanche 29 septembre 2002 10:46
À : Speltz
Cc : spip@rezo.net
Objet : Re: [Spip] Quelques articles non datés possibles ?

{par num titre,par date}{inverse} ne fonctionne pas et renvoie le message

Essaie peut-être {par num titre, date}{inverse}

-- Fil