Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Iñtërnâçiônàlizæçiøn deaplicaciones web<br />Pedro Hernández.<br />Blog: http://blog.phpleo.com/<br />twitter: @phpleo<br />
¿Por qué aplicaciones como Facebook<br />o Twitter pueden llegar a tantos usuarios?<br />http://www.flickr.com/photos/marm...
“Internacionalización: Adaptar las aplicaciones a diferentes idiomas y culturas”<br />http://www.flickr.com/photos/russell...
i18n<br />
Cultura del usuario<br />es<br />es_ES<br />es_AR<br />en_US<br />en_GB<br />ISO 639-1<br />(Idioma)<br />3166-1<br />(Paí...
Detectando la cultura del usuario<br />Cabecera HTTP Accept-Language(no es muy fiable).<br />Geolocalizaciónde la IP.<br />
Usando la Internacionalización<br />http://www.flickr.com/photos/torek/857931903/<br />
Cultura en la Url<br />http://www.mysite.com/es/acerca-de/<br />http://www.mysite.com/es-es/acerca-de/<br />http://en.mysi...
Información textual en la base de datos<br />
Traducción de la interfaz<br />Mostrar etiquetas, mensajes y la navegación en diferentes idiomas.<br />Herramientas:<br />...
Herramientas para I18N la Interfaz<br />http://www.flickr.com/photos/jamingray/935197028/<br />
Diccionarios<br />lang/en_US.php<br />templates/index.php<br />$lang = array(<br />    &apos;nombre&apos;   =&gt; &apos;Na...
Gettext<br />Biblioteca GNU de i18n.<br />Archivo .po (texto plano) compilado en un archivo binario .mo.<br />Función de t...
Gettext<br />templates/index.php<br />lang/en_US.mo<br />#: templates/index.php:15<br />msgid “Nombre“<br />msgstr “Name“<...
XLIFF<br />XLIFF (XML LocalizationInterchangeFileFormat).<br />Formato estándar basado en XML.<br />Función de traducción:...
XLIFF<br />lang/messages.en_US.xml<br />&lt;?xmlversion=&quot;1.0&quot; ?&gt;<br />&lt;xliffversion=&quot;1.0&quot;&gt;<br...
r3<br />Utilizado por Yahoo.<br />Función de traducción: &lt;r3:trans&gt;hello&lt;/r3:trans&gt; vs __(‘hello’)<br />
Español: Guiando la web hacia su máximopotencial…�<br />Alemán:AlleMöglichkeiten des Web erschließen…<br />Chino:...
Juego de carácteres (charset) &<br />codificación (encoding)<br />http://www.flickr.com/photos/sedah/3203954495/<br />
Juego de carácteres<br />Probablemente se usó ISO-8859-1 (ISO-Latin-1).<br />ISO-8859-1: &euro; en lugar de €<br />Familia...
http://www.flickr.com/photos/mumpfpuffel/2763886252/<br />
Uniformizar<br />Apache:AddDefaultCharset utf-8<br />MySQL:create database `midb`character set utf8 collate utf8_unicode_c...
Español: Guiando la web hacia su máximo potencial…<br />Alemán: Alle Möglichkeiten des Web erschließen…<br />Chino:引发网络的全部...
Gracias.<br />Pedro Hernández.<br />Blog: http://blog.phpleo.com/<br />twitter: @phpleo<br />
Upcoming SlideShare
Loading in …5
×

Internacionalización de aplicaciones web.

1,697 views

Published on

Published in: Education
  • Be the first to comment

  • Be the first to like this

Internacionalización de aplicaciones web.

  1. 1. Iñtërnâçiônàlizæçiøn deaplicaciones web<br />Pedro Hernández.<br />Blog: http://blog.phpleo.com/<br />twitter: @phpleo<br />
  2. 2. ¿Por qué aplicaciones como Facebook<br />o Twitter pueden llegar a tantos usuarios?<br />http://www.flickr.com/photos/marmotte73/2485775993/<br />
  3. 3. “Internacionalización: Adaptar las aplicaciones a diferentes idiomas y culturas”<br />http://www.flickr.com/photos/russelljsmith/3747387/<br />
  4. 4. i18n<br />
  5. 5. Cultura del usuario<br />es<br />es_ES<br />es_AR<br />en_US<br />en_GB<br />ISO 639-1<br />(Idioma)<br />3166-1<br />(País)<br />
  6. 6. Detectando la cultura del usuario<br />Cabecera HTTP Accept-Language(no es muy fiable).<br />Geolocalizaciónde la IP.<br />
  7. 7. Usando la Internacionalización<br />http://www.flickr.com/photos/torek/857931903/<br />
  8. 8. Cultura en la Url<br />http://www.mysite.com/es/acerca-de/<br />http://www.mysite.com/es-es/acerca-de/<br />http://en.mysite.com/about/<br />http://en-us.mysite.com/about/<br />Almacenamiento en cache.<br />Indexado en motores de búsqueda (SEO).<br />
  9. 9. Información textual en la base de datos<br />
  10. 10. Traducción de la interfaz<br />Mostrar etiquetas, mensajes y la navegación en diferentes idiomas.<br />Herramientas:<br />Diccionarios.<br />Gettext.<br />XLIFF.<br />r3.<br />
  11. 11. Herramientas para I18N la Interfaz<br />http://www.flickr.com/photos/jamingray/935197028/<br />
  12. 12. Diccionarios<br />lang/en_US.php<br />templates/index.php<br />$lang = array(<br /> &apos;nombre&apos; =&gt; &apos;Name&apos;,<br /> &apos;apellidos&apos; =&gt; &apos;Lastname&apos;,<br /> &apos;email&apos; =&gt; &apos;E-mail&apos;<br /> );<br />&lt;?php echo $lang[‘nombre’]; ?&gt;<br />&lt;?php echo $lang[‘apellidos’]; ?&gt;<br />&lt;?php echo $lang[‘email’]; ?&gt;<br />
  13. 13. Gettext<br />Biblioteca GNU de i18n.<br />Archivo .po (texto plano) compilado en un archivo binario .mo.<br />Función de traducción: _(‘’)<br />
  14. 14. Gettext<br />templates/index.php<br />lang/en_US.mo<br />#: templates/index.php:15<br />msgid “Nombre“<br />msgstr “Name“<br />#: templates/index.php:16<br />msgid “Apellidos“<br />msgstr “Lastname“<br />#: templates/index.php:17<br />msgid “E-mail“<br />msgstr “E-mail“<br />&lt;?php echo _(‘Nombre’); ?&gt;<br />&lt;?php echo _(‘Apellidos’); ?&gt;<br />&lt;?php echo _(‘E-mail’); ?&gt;<br />en_US.po<br />
  15. 15. XLIFF<br />XLIFF (XML LocalizationInterchangeFileFormat).<br />Formato estándar basado en XML.<br />Función de traducción: __(‘’)<br />Archivo xml:<br />messages.[codigo_de_idioma].xml<br />messages.en_US.xml<br />
  16. 16. XLIFF<br />lang/messages.en_US.xml<br />&lt;?xmlversion=&quot;1.0&quot; ?&gt;<br />&lt;xliffversion=&quot;1.0&quot;&gt;<br /> &lt;fileorginal=&quot;global&quot; source-language=“es_ES&quot; datatype=&quot;plaintext&quot;&gt;<br /> &lt;body&gt;<br /> &lt;trans-unit id=&quot;1&quot;&gt;<br /> &lt;source&gt;Nombre&lt;/source&gt;<br /> &lt;target&gt;Name&lt;/target&gt;<br /> &lt;/trans-unit&gt;<br /> &lt;trans-unit id=&quot;2&quot;&gt;<br /> &lt;source&gt;Apellidos&lt;/source&gt;<br /> &lt;target&gt; Lastname &lt;/target&gt;<br /> &lt;/trans-unit&gt;<br /> &lt;/body&gt;<br /> &lt;/file&gt;<br />&lt;/xliff&gt;<br />
  17. 17. r3<br />Utilizado por Yahoo.<br />Función de traducción: &lt;r3:trans&gt;hello&lt;/r3:trans&gt; vs __(‘hello’)<br />
  18. 18. Español: Guiando la web hacia su máximopotencial…�<br />Alemán:AlleMöglichkeiten des Web erschließen…<br />Chino: 引发网络的全部潜能…<br />Árabe: ...لإيصال الشبكة المعلوماتية إلىأقصى إمكانياتها<br />
  19. 19. Juego de carácteres (charset) &<br />codificación (encoding)<br />http://www.flickr.com/photos/sedah/3203954495/<br />
  20. 20. Juego de carácteres<br />Probablemente se usó ISO-8859-1 (ISO-Latin-1).<br />ISO-8859-1: &euro; en lugar de €<br />Familia ISO-8859 sólo contienen 255 caracteres.<br />
  21. 21. http://www.flickr.com/photos/mumpfpuffel/2763886252/<br />
  22. 22. Uniformizar<br />Apache:AddDefaultCharset utf-8<br />MySQL:create database `midb`character set utf8 collate utf8_unicode_ci;<br />HTML:&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;<br />Clientes y editores por defecto &quot;editando y guardando&quot; en UTF8.<br />
  23. 23. Español: Guiando la web hacia su máximo potencial…<br />Alemán: Alle Möglichkeiten des Web erschließen…<br />Chino:引发网络的全部潜能…<br />Árabe: ...لإيصال الشبكة المعلوماتية إلىأقصى إمكانياتها<br />
  24. 24. Gracias.<br />Pedro Hernández.<br />Blog: http://blog.phpleo.com/<br />twitter: @phpleo<br />

×