|
Určite sa Vám stalo, že pri uverejňovaní článkov, ak máte nastavené zobrazovanie dátumu uverejnenia či zmeny, taknázov mesiacov či dní máte anglicky. Pokiaľ to Váš web provider podporuje, je možné zmeniť nastavenia cez Locale v globálnom nastavení Joomly. Stačí pridať sk_SK, alebo Slovak. Žiaľ, nie vždy tento postup funguje. Popíšeme si však spôsob, ako jednoducho zmodifikovať zdrovový kód Joomly, aby sa mesiace a dni zobrazovali správne.
V podstate ide o jednoduchú záležitosť. Použijeme na to php funkciu str_replace. Táto funkcia slúži na jenoduchú zámenu reťazcov jedného za druhý, pričom reťazec číta v premennej a novú hodnotu priradí takisto premennej.
Všetky zmeny je nutné vykoať v súbore joomla.php v adresári includes.
Prvá zmena je vo funkcii mosFormatDate
pod riadok: $date = $date > -1 ? strftime( $format, $date + ($offset*60*60) ) : '-';
treba pridať
$date=str_replace("Thursday","Štvrtok","$date"); $date=str_replace("Tuesday","Utorok","$date"); $date=str_replace("Sunday","Nedeľa","$date"); $date=str_replace("Monday","Pondelok","$date"); $date=str_replace("Wednesday","Streda","$date"); $date=str_replace("Friday","Piatok","$date"); $date=str_replace("Saturday","Sobota","$date"); $date=str_replace("January","Január","$date"); $date=str_replace("February","Február","$date"); $date=str_replace("March","Marec","$date"); $date=str_replace("April","Apríl","$date"); $date=str_replace("May","Máj","$date"); $date=str_replace("June","Jún","$date"); $date=str_replace("July","Júl","$date"); $date=str_replace("August","August","$date"); $date=str_replace("September","September","$date"); $date=str_replace("October","Október","$date"); $date=str_replace("November ","November","$date"); $date=str_replace("December","December","$date");
a vo funkci mosCurrentDate treba nahradiť riadok:
$format = _DATE_FORMAT_LC;
riadkami $dny = array ("Pondelok", "Utorok", "Streda", "Štvrtok", "Piatok", "Sobota", "Nedele"); $mesice = array ("januára", "februára", "marca", "apríla", "mája", "júna", "júla", "augusta", "septembra", "októbra", "novembra", "decembra"); $format = $dny[Date ("w") - 1]; $format .= Date(", j."); $format .= $mesice[Date ("n") - 1]; $format .= " "; $format .= Date("Y");
Jednoduché že? Nezabudnite si však spraviť zálohu pôvodného súboru, alebo pôvodné hodnoty dať do komentárových zátvoriek: /* komentar */ |
Super návod Autor: rostratus Dátum: 2006-08-10 19:33:54 Ďakujem veľmi pekne za návod. Pomohol mi pretože mne nefungovali slová sk_SK, slovak a podobne koli tomu, ze mam hosting v CZ. Este raz dik | dik Autor: plusminus Dátum: 2006-09-04 13:26:20 facha ako ma, thanx | ciarka pred j Autor: fuxo Dátum: 2008-02-24 13:32:39 Mal som trochu problem s tym, ze mi pred cislom dna zobrazovalo "," (ciarku). Riesenim je odstranenie ciarky s pred "j" tu $format .= Date(", j."); | vo funkci mosCurrentDate ktoru si napis Autor: kinki Dátum: 2008-03-09 20:32:25 Ak chces zobrazovat datum spravne treba použiť takyto zapis function mosCurrentDate( $format="" ) { global $mosConfig_offset; if ($format=="") { $mesiace = array ("januára", "februára", "marca", "apríla", "mája", "júna", "júla", "augusta", "septembra", "októbra", "novembra", "decembra"); $den = array ( "Nedeľa", "Pondelok", "Utorok", "Streda", "Štvrtok", "Piatok", "Sobota"); $format .= $den[(Date("w")-0)]; $format .= Date(", j."); $format .= $mesiace[Date ("n") - 1]; $format .= " "; $format .= Date("Y"); } $date = strftime( $format, time() + ($mosConfig_offset*60*60) ); return $date; } | vystup je potom Autor: kinki Dátum: 2008-03-09 20:34:15 Nedela, 9.marca 2008 |
Len registrovaní užívatelia môžu pridať komentár. Prosím prihláste sa alebo sa zaregistrujte. Powered by AkoComment 2.0! |