Títulos de los Módulos en Varios Idiomas

mcloud Seguir

Ni
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
11 Oct 2005
Mensajes
3.829
Algunos usuarios me comentaron que cuando usaban la traduccíón al español del vBadvanced, los títulos quedaban traducidos al español con indiferencia del idioma utilizado.

Esto es así porque el título de los temas no utiliza frases y por lo tanto no se pueden poner en función de una variable.

En foros con más de un idioma esto puede ser un inconveniente, por lo que voy a intentar explicar aquí como hacer las modificaciones oportunas, para que los títulos aparezcan en función del idioma seleccionado.

Lo primero que debemos hacer es crear algunas nuevas frases dentro del Tipo de Frase GLOBAL. Para ello vamos al admincp -> Idiomas y Frases -> Administrar Frases y pinchamos en Crear Nueva Frase.

Debemos rellenar los campos NombreVar (nombre de la variable), Texto (Frase en Inglés) y Traducción de ... (Este campo será el de los diferentes idiomas, distintos del inglés).

Las frases a crear serán la de los títulos de los módulos, por ejemplo:
(NombreVar -> Texto -> Traducción)
quick_moderation -> Quick Moderation -> Moderación Rápida
site_navigation -> Site Navigation -> Menú Principal
online_users -> Online Users -> Usuarios Conectados
stats -> Stats -> Estadísticas
buddy_list -> Buddy List ->Lista de Amigos
recent_threads -> Recent Threads -> Temas Nuevos
etc...
No es necesario crear la frase de Cumpleaños de hoy, porque ya está creada en vBulletin, la variable es todays_birthdays

Una vez creadas las frases y anotadas las variables, hemos de editar el archivo vba_cmps_include_top.php que está en la carpeta includes. Allí buscamos lo siguiente:
PHP:
else
{
require(DIR . '/modules/' . $mods['filename']);
}
y a continuación añadimos esto:
PHP:
if($home[$mods['modid']]['mytitle']) 
{ 
 
$mods['title'] = $home[$mods['modid']]['mytitle']; 
unset($home[$mods['modid']]['mytitle']); 
}

Ahora debemos editar los módulos que estan dentro de la carpeta modules, para añadir las variables de las frases creadas.

Por ejemplo, para añadir Cumpleaños de hoy", editar el módulo birthdays.php y al final del todo, justo antes de ?> añade lo siguiente:
PHP:
$home[$mods['modid']]['mytitle'] = $vbphrase['todays_birthdays'];
Esto mismo hay que repetirlo en todos los módulos, cambiando todays_birthdays por la variable correspondiente, con las siguientes excepciones:

En el módulo onlineusers.php, los cambios a realizar son los siguientes:
Buscar $mods['title'] = $buddymod['title']; y sustituirlo por $mods['title'] = $vbphrase['buddy_list'];
Buscar $mods['title'] = $onlinemod['title'] . ': ' . $totalonline; y sustituirlo por $mods['title'] = $vbphrase['online_users'] . ': ' . $totalonline;

En el módulo recentthreads.php, al final del todo, justo encima de ?> añadir lo siguiente
$mods['title'] = $vbphrase['recent_threads'];

Cualquier problema, comentarlo mas abajo y veremos de solucionarlo.

Saludos..!
 

Amici

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
21 Jul 2008
Mensajes
30
Ok mcloud ya casi la ise solo me faltan 2 Modules a si que la gran pregunta seria: Como modificar los Mudules que no se encuentran en la Carpeta Mudules como por ejemplo News Archives (no Recent Threads) y Search?
 

mcloud

Ni
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
11 Oct 2005
Mensajes
3.829
Creo que News Archive utiliza el módulo news.php, por lo que habría que hacer algo parecido a lo realizado con Buddy List y Online Users.

En cuanto a Search Forums, no utliza un archivo .php sino una plantilla, por lo que la solución es algo más complicada.

Mañana lo miraré.
 

Amici

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
21 Jul 2008
Mensajes
30
SI mcloud News Archive utiliza el módulo news.php,

asi que he sostituido:
$mods['title'] = $archivemod['title'];
por:
$mods['title'] = $vbphrase['newsarchive'];

y:
$mods['title'] = $newsmod['title'];
por:
$mods['title'] = $vbphrase['news'];

N.B.:Lo que esta escrito con rojo es el nombre de la variable de la frase creada por nosotros.

y al ultimo antes de ?> he puesto:
$home[$mods['modid']]['mytitle'] = $vbphrase['news'];
talvez no era necesario este ultimo paso pero ya que asi me funciona se lo he dejado.

BUEO AHORA SOLO ESPERO LA SOLUCION DE Search Forums GRACIAS DE ANTEMANO...!
 

mcloud

Ni
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
11 Oct 2005
Mensajes
3.829
Search Forum no utiliza archivos .php sino una plantilla.

Esta plantilla, adv_portal_search, sólo muestra el contenido del módulo, no afecta en nada al titulo.

En cuanto a la plantilla que presenta el título es la adv_portal_module_wrapper y ahí no se puede hacer ningun cambio, ya que afectaría a todos los módulos.

Parece complicado poder poner Search Forum en varios idiomas.
 

Amici

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
21 Jul 2008
Mensajes
30
Ok mcloud :) Gracias por la ayuda si es muy complicado no importa tanto por un modulo que no esta traduzido no muere nadie, aparte que es Search, pienso que todo el mundo sabe su significado MUCHISIMAS GRACIAS POR LA AYUDA!
 
Arriba