- 1
[Opened] [Résolu]jDatetime dans un jTpl pour afficher juste mois et année
Posted by dantahoua on 11/23/2010 20:19
Salut.
Une idée sur comment faire pour afficher juste le mois et l'année d'une date (db_format) passé dans un tpl?
Pour l'instant je fais ça dans le tpl:
{$NEWS->date_created|jdatetime:'db_date','full_lang_date'}
Mais le client veut juste le mois et l'année (genre Juillet 2010 et en Anglais July 2010)...
Faut-il que je crée un modifier jDatetime spécifique dans plugins/tpl/ ?
[Opened] jDatetime dans un jTpl pour afficher juste mois et année
Posted by dantahoua on 11/23/2010 20:43
Voici ma solution, j'ai créé un modifier en m'inspirant de jdatetime:
function jtpl_modifier_common_date_month_year($sDate) { <code> $dt = new jDateTime(); $dt->setFromString($sDate,jDateTime::DB_DFORMAT); $t = mktime ( $dt->hour, $dt->minute,$dt->second , $dt->month, $dt->day, $dt->year ); $month = jLocale::get('jelix~date_time.month.'.date('m',$t).'.label'); return $month.' '.$dt->year;
}
</code>Que j'appel dans mon tpl:
{$NEWS->date_created|date_month_year}
[Opened] [Résolu]jDatetime dans un jTpl pour afficher juste mois et année
Posted by Vincentv on 11/24/2010 14:16
tu peux aussi utiliser la classe DateTime de PHP
function jtpl_modifier_common_date_month_year ($sDate) { <code> $date = DateTime::createFromFormat($sDate,'Y-m-d H:i:s'); $month = jLocale::get('jelix~date_time.month.'. $date->format('m').'.label'); return $month.' '. $date->format('Y');
}</code>
ou
function jtpl_modifier_common_date_month_year ($sDate) { <code> $date = DateTime::createFromFormat($sDate,'Y-m-d H:i:s'); setLocale(LC_TIME, $GLOBALS['gJConfig']->locale); return strftime("%B %Y", $date->format('U'));
}
</code>ou alors tu as le modificateur /plugins/tpl/common/modifier.date_format.php
{$mydate|date_format:"%B %Y"};)
- 1