Foros del Web » Programando para Internet » ASP Clásico »

Traducir sitio al ingles!

Estas en el tema de Traducir sitio al ingles! en el foro de ASP Clásico en Foros del Web. hola, mi inquietud es que tengo un sitio en español y ahora hay que hacer una version en ingles, como se manejarian las url para ...
  #1 (permalink)  
Antiguo 12/01/2007, 14:21
 
Fecha de Ingreso: enero-2007
Mensajes: 80
Antigüedad: 17 años, 5 meses
Puntos: 0
Exclamación Traducir sitio al ingles!

hola, mi inquietud es que tengo un sitio en español y ahora hay que hacer una version en ingles, como se manejarian las url para estando dentro del sitio pueda navegar simultaneamente en englis y español en ambas versiones. Siempre y cuando el usuario lo desee al pulsar el enlace español o ingles.

muchas gracias mi sitio esta en asp interactuado con dreamweaver.
  #2 (permalink)  
Antiguo 12/01/2007, 15:09
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Re: Traducir sitio al ingles!

Hay varias formas de lograrlo, una de ellas es definir una variable de sesión, y dependiendo de esta, lo que harás será imprimir variables, esto implica que tienes que cambiar todo tu texto estático a variable, lo que se hace es tener un archivo a nivel de include, con un case, el cuál asigna el valor a la variable en cuestión:

Código:
'Archivo idioma
Dim txtLangSaludo

Select case Session("lang")
   case "esp"
      txtLangSaludo = "Hola Mundo"
   case "eng"
      txtLangSaludo = "Hello world"
End select


'Otra pagina asp
<!--#include file="idioma.asp"-->
<%=txtLangSaludo%>
Obviamente supone que la sesion ya tiene un valor y si no la tiene deberas asignarselo, el problema de esto es que necesitas un orden muy estricto para no perderte en un mundo de variables, la ventaja es tener todo junto y que puede ser muy flexible incluso la implementacion de muchos mas idiomas, te sugiero que le des un vistazo a http://www.webwizguide.info/ su foro tiene esta solución.

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 12/01/2007, 16:17
 
Fecha de Ingreso: enero-2007
Mensajes: 80
Antigüedad: 17 años, 5 meses
Puntos: 0
Pregunta Re: Traducir sitio al ingles!

Cuando te refieres a ese foro es esta dir:

webwizguide.info/bbs/forum_posts.asp?TID=22035

una persona que quiere su sitio en chino? pero no le dan la solucion o estoy equivocada? si es asi por favor envieme el foro que seria el correcto.

de antemano le agradezco su respuesta y espero poner en practica su solucion pero me hablo de varias formas de hacerlo le agradeceria me explicase alguna mas....
  #4 (permalink)  
Antiguo 12/01/2007, 16:21
Avatar de omegafunky  
Fecha de Ingreso: diciembre-2003
Ubicación: Tabasco, Mexico
Mensajes: 3.534
Antigüedad: 20 años, 5 meses
Puntos: 33
Re: Traducir sitio al ingles!

bueno yo estube en ese dilema y yo lo hice con php pero pues como ya te mencionaron es una variable de session donde guardas el lenguaje escogido y de acuedo a esto en la consulta traes los datos segun el idioma es la mas practica
__________________
Canon 7D | Canon 5D Mark II | 35mm 1.4L | 135mm 2L | Pocket Wizard Plus III
  #5 (permalink)  
Antiguo 12/01/2007, 16:56
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Re: Traducir sitio al ingles!

Cita:
Iniciado por lisseth Ver Mensaje
Cuando te refieres a ese foro es esta dir:

webwizguide.info/bbs/forum_posts.asp?TID=22035

una persona que quiere su sitio en chino? pero no le dan la solucion o estoy equivocada? si es asi por favor envieme el foro que seria el correcto.

de antemano le agradezco su respuesta y espero poner en practica su solucion pero me hablo de varias formas de hacerlo le agradeceria me explicase alguna mas....
Me refiero a que descargues el codigo del foro y veas como solucionan la plataforma multi-idioma.

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #6 (permalink)  
Antiguo 12/01/2007, 18:26
 
Fecha de Ingreso: junio-2004
Mensajes: 72
Antigüedad: 20 años
Puntos: 2
Exclamación Re: Traducir sitio al ingles!

Y por mejor no haces las traducciones tirando desde archivos ??????
te paso un ejemplo de como lo que tengo yo, de paso lo dejo al codigo por si le sirve a los demas....

Ingresar el siguiente codigo en la parte superior de la/s pagina/s
Código:
IF Request.Form("Idioma") <> "" Then
	Response.Cookies("Idioma") = Request.Form("Idioma")
	Response.Cookies("Idioma").Expires = DateAdd("d", 30, Now()) ' este es un ejemplo. podes descartarlo o suministrar mayor tiempo en recordar la cookies
	Response.Redirect Request.ServerVariables("URL") 'Desde aca volvemos a la pagina 
End IF

Despues quedari armar el Form para el idioma ej:
Código:
<script language="javascript">
function SelectLang() 
{
document.FormularioIdioma.submit();
}
</script>

<form action="<%= Request.ServerVariables("URL") %>" method="post" name="FormularioIdioma">
<select name="Idioma" class="select" onchange="SelectLang()">
<% If Request.Cookies("Idioma") <> "" Then %>
<option Seleccionar Idioma </option>
<% End IF %>
<!--
Aca se puede o bien, sacar los idiomas desde una DB o simplemente colocar el nombre de los idiomas
-->
<option value="Español" <% If Request.Cookies("Idioma") = "Español" Then Response.write " Selected" End If %>> Español </option>
<option value="Ingles" <% If Request.Cookies("Idioma") = "Ingles" Then Response.write " Selected" End If %>> Ingles </option>
</select>
</form>

Colocar el codigo en paginas como: Config, Funsiones etc..... (a criterio de cada uno)
Código:
Set AllMsgLanguage = CreateObject("Scripting.Dictionary")	
LeyendoMensaje()	
Sub LeyendoMensaje()
		IF Request.Cookies("Idioma") <> "" Then
		FileLanguage = Server.MapPath("IDIOMAS/" & Request.Cookies("Idioma"))
		Else
		FileLanguage = Server.MapPath("IDIOMAS/Idioma_por_Default")
		End IF
		Set FsLanguage = CreateObject("Scripting.FileSystemObject")
		IF (FsLanguage.FileExists(FileLanguage)) Then
			Set ReadLanguage = FsLanguage.openTextFile(FileLanguage)
			Do While Not (ReadLanguage.AtEndOfStream)
				LineLanguage = Trim(ReadLanguage.ReadLine)
				IF (Len(LineLanguage) > 0 AND Left(LineLanguage, 1) <> "#" AND Left(LineLanguage, 1) <> "'") Then
					MsgLanguage = Split(LineLanguage, "=", 2)
					AllMsgLanguage.Add Trim(MsgLanguage(0)), Trim(MsgLanguage(1))
				End IF
			Loop
		End IF
End Sub
Y por ultimo ...
Código:
Function Traduccion(Msg) 
	IF not AllMsgLanguage.Exists(Msg) Then
		Traduccion = "[" & Msg & "]"	
	Else
		Traduccion = AllMsgLanguage.Item(Msg)
	End IF
End Function
Explicacion de su USO:

en las paginas colocar "Traduccion("Mi_Contenido")", de esta forma lee el archivo por default, si la cookies tiene contenido , directamente lee el archivo ese en cuestion.

Ejemplo de escritura en el archivo Idioma:
#Español
saludo = Bienvenido

#Ingles
saludo = Welcome

........
Asi con los contenidos que necesiten.

Espero que sirva de ayuda, y quien se interese en modificarlo adelante, para que es el codigo libre sino ??
Atte. A|ert
  #7 (permalink)  
Antiguo 12/01/2007, 18:42
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Re: Traducir sitio al ingles!

Es una buena opción
Siguiendo el mismo principio puedes tambien hacer una precarga desde un XML por ejempo.
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:25.