bbPress - TalkPress
no es una pregunta de soporteRecien termino de traducir el locale.php de Bbpress a español, para solo tener traducidas las fechas, porque no estoy acostumbrado al español, se los dejo pegado por si por ahí alguno lo quiere.
<?php
// Date and Time
class BB_Locale {
var $weekday;
var $weekday_initial;
var $weekday_abbrev;
var $month;
var $month_abbrev;
var $meridiem;
var $number_format;
var $datetime_formatstring;
var $text_direction = '';
var $locale_vars = array('text_direction');
function init() {
// The Weekdays
$this->weekday[0] = __('Domingo');
$this->weekday[1] = __('Lunes');
$this->weekday[2] = __('Martes');
$this->weekday[3] = __('Miercoles');
$this->weekday[4] = __('Jueves');
$this->weekday[5] = __('Viernes');
$this->weekday[6] = __('Sabado');
// The first letter of each day. The _%day%_initial suffix is a hack to make
// sure the day initials are unique.
$this->weekday_initial[__('Domingo')] = __('D_Domingo_initial');
$this->weekday_initial[__('Lunes')] = __('L_Lunes_initial');
$this->weekday_initial[__('Martes')] = __('M_Martes_initial');
$this->weekday_initial[__('Miercoles')] = __('M_Miercoles_initial');
$this->weekday_initial[__('Jueves')] = __('J_Jueves_initial');
$this->weekday_initial[__('Viernes')] = __('V_Viernes_initial');
$this->weekday_initial[__('Sabado')] = __('S_Sabado_initial');
foreach ($this->weekday_initial as $weekday_ => $weekday_initial_) {
$this->weekday_initial[$weekday_] = preg_replace('/_.+_initial$/', '', $weekday_initial_);
}
// Abbreviations for each day.
$this->weekday_abbrev[__('Domingo')] = __('Dom');
$this->weekday_abbrev[__('Lunes')] = __('Lun');
$this->weekday_abbrev[__('Martes')] = __('Mar');
$this->weekday_abbrev[__('Miercoles')] = __('Mie');
$this->weekday_abbrev[__('Jueves')] = __('Jue');
$this->weekday_abbrev[__('Viernes')] = __('Vie');
$this->weekday_abbrev[__('Sabado')] = __('Sab');
// The Months
$this->month['01'] = __('Enero');
$this->month['02'] = __('Febrero');
$this->month['03'] = __('Marzo');
$this->month['04'] = __('Abril');
$this->month['05'] = __('Mayo');
$this->month['06'] = __('Junio');
$this->month['07'] = __('Julio');
$this->month['08'] = __('Agosto');
$this->month['09'] = __('Septiembre');
$this->month['10'] = __('Octubre');
$this->month['11'] = __('Noviembre');
$this->month['12'] = __('Diciembre');
// Abbreviations for each month. Uses the same hack as above to get around the
// 'Mayo' duplication.
$this->month_abbrev[__('Enero')] = __('Ene_Enero_abbreviation');
$this->month_abbrev[__('Febrero')] = __('Feb_Febrero_abbreviation');
$this->month_abbrev[__('Marzo')] = __('Mar_Marzo_abbreviation');
$this->month_abbrev[__('Abril')] = __('Abr_Abril_abbreviation');
$this->month_abbrev[__('Mayo')] = __('Mayo_Mayo_abbreviation');
$this->month_abbrev[__('Junio')] = __('Jun_Junio_abbreviation');
$this->month_abbrev[__('Julio')] = __('Jul_Julio_abbreviation');
$this->month_abbrev[__('Agosto')] = __('Ago_Agosto_abbreviation');
$this->month_abbrev[__('Septiembre')] = __('Sep_Septiembre_abbreviation');
$this->month_abbrev[__('Octubre')] = __('Oct_Octubre_abbreviation');
$this->month_abbrev[__('Noviembre')] = __('Nov_Noviembre_abbreviation');
$this->month_abbrev[__('Diciembre')] = __('Dic_Diciembre_abbreviation');
foreach ($this->month_abbrev as $month_ => $month_abbrev_) {
$this->month_abbrev[$month_] = preg_replace('/_.+_abbreviation$/', '', $month_abbrev_);
}
// The Meridiems
$this->meridiem['am'] = __('am');
$this->meridiem['pm'] = __('pm');
$this->meridiem['AM'] = __('AM');
$this->meridiem['PM'] = __('PM');
// Numbers formatting
// See http://php.net/number_format
$trans = __('number_format_decimals');
$this->number_format['decimals'] = ('number_format_decimals' == $trans) ? 0 : $trans;
$trans = __('number_format_decimal_point');
$this->number_format['decimal_point'] = ('number_format_decimal_point' == $trans) ? '.' : $trans;
$trans = __('number_format_thousands_sep');
$this->number_format['thousands_sep'] = ('number_format_thousands_sep' == $trans) ? ',' : $trans;
// Date/Time formatting
$this->datetime_formatstring['datetime'] = __('F j, Y - h:i A');
$this->datetime_formatstring['date'] = __('F j, Y');
$this->datetime_formatstring['time'] = __('h:i A');
$this->_load_locale_data();
}
function _load_locale_data() {
$locale = get_locale();
$locale_file = BB_LANG_DIR . $locale . '.php';
if ( !is_file($locale_file) )
return;
include($locale_file);
foreach ( $this->locale_vars as $var ) {
$this->$var = $$var;
}
}
function get_weekday($weekday_number) {
return $this->weekday[$weekday_number];
}
function get_weekday_initial($weekday_name) {
return $this->weekday_initial[$weekday_name];
}
function get_weekday_abbrev($weekday_name) {
return $this->weekday_abbrev[$weekday_name];
}
function get_month($month_number) {
return $this->month[zeroise($month_number, 2)];
}
function get_month_initial($month_name) {
return $this->month_initial[$month_name];
}
function get_month_abbrev($month_name) {
return $this->month_abbrev[$month_name];
}
function get_meridiem($meridiem) {
return $this->meridiem[$meridiem];
}
function get_datetime_formatstring($type = 'datetime') {
return $this->datetime_formatstring[$type];
}
// Global variables are deprecated. For backwards compatibility only.
function register_globals() {
$GLOBALS['weekday'] = $this->weekday;
$GLOBALS['weekday_initial'] = $this->weekday_initial;
$GLOBALS['weekday_abbrev'] = $this->weekday_abbrev;
$GLOBALS['month'] = $this->month;
$GLOBALS['month_abbrev'] = $this->month_abbrev;
}
function BB_Locale() {
$this->init();
$this->register_globals();
}
}
function bb_gmdate_i18n( $dateformatstring, $unixtimestamp ) {
global $bb_locale;
$i = $unixtimestamp;
if ( !empty($bb_locale->month) && !empty($bb_locale->weekday) ) {
$datemonth = $bb_locale->get_month( gmdate('m', $i) );
$datemonth_abbrev = $bb_locale->get_month_abbrev( $datemonth );
$dateweekday = $bb_locale->get_weekday( gmdate('w', $i) );
$dateweekday_abbrev = $bb_locale->get_weekday_abbrev( $dateweekday );
$datemeridiem = $bb_locale->get_meridiem( gmdate('a', $i) );
$datemeridiem_capital = $bb_locale->get_meridiem( gmdate('A', $i) );
$dateformatstring = ' ' . $dateformatstring;
$dateformatstring = preg_replace("/([^\\\])D/", "\\1" . backslashit( $dateweekday_abbrev ), $dateformatstring);
$dateformatstring = preg_replace("/([^\\\])F/", "\\1" . backslashit( $datemonth ), $dateformatstring);
$dateformatstring = preg_replace("/([^\\\])l/", "\\1" . backslashit( $dateweekday ), $dateformatstring);
$dateformatstring = preg_replace("/([^\\\])M/", "\\1" . backslashit( $datemonth_abbrev ), $dateformatstring);
$dateformatstring = preg_replace("/([^\\\])a/", "\\1" . backslashit( $datemeridiem ), $dateformatstring);
$dateformatstring = preg_replace("/([^\\\])A/", "\\1" . backslashit( $datemeridiem_capital ), $dateformatstring);
$dateformatstring = substr($dateformatstring, 1, strlen($dateformatstring)-1);
}
$j = @gmdate($dateformatstring, $i);
return $j;
}
function bb_get_datetime_formatstring_i18n( $type = 'datetime' ) {
$formatstring = bb_get_option( $type . '_format' );
if ( empty($formatstring) ) {
global $bb_locale;
$formatstring = $bb_locale->get_datetime_formatstring( $type );
}
return $formatstring;
}
function bb_datetime_format_i18n( $unixtimestamp, $type = 'datetime', $formatstring = '' ) {
if ( empty($formatstring) ) {
$formatstring = bb_get_datetime_formatstring_i18n( $type );
}
return bb_gmdate_i18n( $formatstring, bb_offset_time( $unixtimestamp ) );
}
function bb_number_format_i18n($number, $decimals = null) {
global $bb_locale;
// let the user override the precision only
$decimals = is_null($decimals) ? $bb_locale->number_format['decimals'] : intval($decimals);
return number_format($number, $decimals, $bb_locale->number_format['decimal_point'], $bb_locale->number_format['thousands_sep']);
}
?>
Buen trabajo Neri pero ¿por qué no creaste el MO y optaste por traducir a pelo el locale?. Lo malo de este método ya sabes que es las actualizaciones.
P.D.: ¿es el de la RC1?
No traducí todo porque quiero conocer más el código de bbpress y esa es una buena forma de hacerlo, en cuanto a la versión, es la estable, la que se descarga de /latest.zip
Debes Identificarte para publicar.