Fork me on GitHub






News : écrire la date de l'article en toutes lettres et en français ?
Guest_
b'jour,

Comment faire pour écrire le titre d'une article accompagné d'une date sous la forme :

4 octobre 2010 - Concert de Manu Chao Liquid Room

Dans les préférences du module il est possible de formater les dates, mais cela reste en anglais (october et non octobre).

La variable que je souhaiterais personnaliser est <{$story.posttime}> et se trouve dans :

• news/articles.php
$story['posttime'] = formatTimestamp($article->published(),$dateformat);


• news/class/class.newsstory.php
$story['posttime'] = formatTimestamp($story['posttimestamp'],news_getmoduleoption('dateformat'));


... désolé pour la question de noob et si la réponse figure déjà sur ces forums


Posté le : 30/09/2010 13:24
Partager Twitter Partagez cette article sur GG+
Re: News : écrire la date de l'article en toutes lettres et en français ?
Semi pro
Inscrit: 10/11/2004 13:40
Messages: 1659
Peut-être comme ça

- news/articles.php
$formatdate date("d-m-Y",$article->published());
list(
$day$month$year) = explode("-"$formatdate);
$months = array("janvier""février""mars""avril""mai""juin""juillet""août""septembre""octobre""novembre""décembre");
$story['posttime'] = "$day " $months[$month-1] . $year";


http://php.developpez.com/faq/?page=dates#date_mysqlfr

Posté le : 30/09/2010 14:45

PS : Toujours faire une sauvegarde des fichiers avant de les modifier !
-------------------------------------------
http://www.aideordi.com
Partager Twitter Partagez cette article sur GG+
Re: News : écrire la date de l'article en toutes lettres et en français ?
Xoops accro
Inscrit: 20/02/2008 20:27
De Belgium
Messages: 2708
Vérifiez qu'il y a
setlocale(LC_ALL'fr_FR');
dans /language/french/locale.php
Voir aussi ceci avec Smarty.

Posté le : 30/09/2010 14:54

Salutations, Gerard.
PS: Excusez mon mauvais français.
De la bonne manière de poser les questions
Partager Twitter Partagez cette article sur GG+
Re: News : écrire la date de l'article en toutes lettres et en français ?
Guest_
Merci !!

@nikita : ta solution fonctionne impeccable, j'ai ajouté le script à la ligne 188 (au pifomètre). Note : le paramétrage du format de date via l'administration de News ne fait plus effet.

@ghia : dans les deux fichiers /english/local.php et /french/local.php j'ai trouvé "en_US". En les changeant par "fr_FR" rien ne change.

Posté le : 30/09/2010 15:31
Partager Twitter Partagez cette article sur GG+
Re: News : écrire la date de l'article en toutes lettres et en français ?
Xoops accro
Inscrit: 20/02/2008 20:27
De Belgium
Messages: 2708
Ça peut être dépendent de votre serveur (voir documentation de l’hébergeur)
Autres choses à essayer:
setlocale(LC_ALL"fr_FR.ISO-8859-1");
setlocale(LC_ALL"fr_FR.utf8");
setlocale(LC_ALL"fra");
setlocale(LC_ALL"fr");
setlocale(LC_ALL"French");
setlocale(LC_ALL"fr_FR@euro");
Autres variants:
fr_FR.iso-8859-1 fr_FR.iso8859-1 fr_FR.iso88591
fr_FR.ISO-8859-1 fr_FR.ISO8859-1 fr_FR.ISO88591
fr.iso-8859-1 fr.iso8859-1 fr.iso88591
fr.ISO-8859-1 fr.ISO8859-1 fr.ISO88591
French_France.iso-8859-1 French_France.iso8859-1 French_France.iso88591
French_France.ISO-8859-1 French_France.ISO8859-1 French_France.ISO88591
French.iso-8859-1 French.iso8859-1 French.iso88591
French.ISO-8859-1 French.ISO8859-1 French.ISO88591

Posté le : 30/09/2010 15:51

Salutations, Gerard.
PS: Excusez mon mauvais français.
De la bonne manière de poser les questions
Partager Twitter Partagez cette article sur GG+
Re: News : écrire la date de l'article en toutes lettres et en français ?
Guest_
@Ghia, merci ! Je sais désormais où chercher.

J'ai appliqué ce petit script sur mon serveur :
<?php
/* Configure le script en français */
setlocale(LC_ALL'fr_FR');

/* Affiche : vrijdag 22 december 1978 */
echo strftime("%A %e %B %Y"mktime(00012221978));

/* Essai de différentes valeurs possible pour le français depuis PHP 4.3.0 */
$loc_de setlocale(LC_ALL'fr_FR.utf8''fr_FR''fr''fra');
echo 
"L'identifiant du français sur ce système est '$loc_de'";
?>


J'obtiens le résultat suivant en appelant le script :
Citation :
vendredi 22 décembre 1978 L'identifiant du français sur ce système est 'fr_FR.utf8'


Par contre cela ne modifie toujours pas la langue (october et pas octobre) lorsque je mets fr_FR.utf8 dans www/language/french/local.php

Il s'agit peut être d'un souci de programmation php dans le module News ?

---

@Nikita :
• la solution que tu m'as indiquée fonctionne pour la page article.php, c'est à dire la vue de la page article (modules/news/article.php?storyid=3)

• Par contre cela ne change rien pour les dates accompagnant les titres sur la page des topics : modules/news/index.php?storytopic=2

Saurais-tu où / comment placer ton script pour que la modification fasse effet sur la page d'accueil du sujet ?

Posté le : 30/09/2010 21:22
Partager Twitter Partagez cette article sur GG+
Re: News : écrire la date de l'article en toutes lettres et en français ?
Xoops accro
Inscrit: 20/02/2008 20:27
De Belgium
Messages: 2708
Avec le
setlocale(LC_ALL'fr_FR');
echo 
strftime("%A %e %B %Y"mktime(00012221978));
et Citation :
vendredi 22 décembre 1978

ça me semble quand-même bien une date Française.
Que-est-que ça donne avec
setlocale(LC_ALL'fr_FR');
echo 
strftime("%A %e %B %Y"mktime(00010221978));
Si c'est bon il faut simplement le fr_FR
Pour obtenir le parametre activee:
echo setlocale(LC_ALLNULL);

Citation :
L'identifiant du français sur ce système est 'fr_FR.utf8'
Le résultat est peut-être dépendent de l'ordre des arguments.
$loc_de setlocale(LC_ALL'fr_FR''fr''fra''fr_FR.utf8');



Posté le : 01/10/2010 00:59

Salutations, Gerard.
PS: Excusez mon mauvais français.
De la bonne manière de poser les questions
Partager Twitter Partagez cette article sur GG+
Re: News : écrire la date de l'article en toutes lettres et en français ?
Semi pro
Inscrit: 10/11/2004 13:40
Messages: 1659
Citation :

Burning a écrit :
@Nikita :
• la solution que tu m'as indiquée fonctionne pour la page article.php, c'est à dire la vue de la page article (modules/news/article.php?storyid=3)

• Par contre cela ne change rien pour les dates accompagnant les titres sur la page des topics : modules/news/index.php?storytopic=2

Saurais-tu où / comment placer ton script pour que la modification fasse effet sur la page d'accueil du sujet ?


dans le fichier news/class/class.newsstory.php

remplace la ligne
$story['posttime'] = formatTimestamp($story['posttimestamp'],news_getmoduleoption('dateformat'));


par
$formatdate date("d-m-Y",$story['posttimestamp']);
list(
$day$month$year) = explode("-"$formatdate);
$months = array("janvier""février""mars""avril""mai""juin""juillet""août""septembre""octobre""novembre""décembre");
$story['posttime'] = "$day " $months[$month-1] . $year";

Posté le : 01/10/2010 07:15

PS : Toujours faire une sauvegarde des fichiers avant de les modifier !
-------------------------------------------
http://www.aideordi.com
Partager Twitter Partagez cette article sur GG+
Re: News : écrire la date de l'article en toutes lettres et en français ?
Guest_
Merci Nikita, cela fonctionne :)

@Ghia : le script m'affiche bien la date en toutes lettres mais une fois l'identifiant correct trouvé (fr_FR.utf8), je ne sais pas la faire fonctionner correctement.

Si j'écris dans local.php
Citation :
setlocale(LC_ALL, "fr_FR.utf8");

... j'ai toujours october et non pas octobre.

---

Pour moi le sujet est clos, mais il s'agit d'une solution "de dépannage" car je crois que cela ne peut pas convenir pour un site multilingue.

Posté le : 04/10/2010 13:44
Partager Twitter Partagez cette article sur GG+
Re: News : écrire la date de l'article en toutes lettres et en français ?
Xoops accro
Inscrit: 20/02/2008 20:27
De Belgium
Messages: 2708
Pourquoi vous mettez
setlocale(LC_ALL"fr_FR.utf8");
, car la conclusion du script de post #6 est que ça marche avec
setlocale(LC_ALL"fr_FR");

Posté le : 04/10/2010 16:21

Salutations, Gerard.
PS: Excusez mon mauvais français.
De la bonne manière de poser les questions
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

76 Personne(s) en ligne (60 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 76 | Plus ...