9. LOCALISATION
• L10N - Localisation
• Primär Übersetzung in eine andere Sprache
• Aber auch Anpassung von Datums, Zeit,Währungs,Temperaturangaben
• Ggf. andere Rechtsvorschriften.
• Medien
• Berücksichtigung Kultureller und Geografischer Gegebenheiten.
{
10 Zeichen
10. InternationalisatioN
• I18N - Internationalisation
• Gestalten einer Software, das sie Lokalisierbar ist
• Schreibrichtung LtR, RtL
• Datums, Zeit,Währungs,Temperaturangaben
• Syntaktische Eigenheiten von Sprachen berücksichtigen.
18 Zeichen
{
11. GlobalisatioN
• G11N - Globalisation
• Ist die Kombination aus Internationalisation und Localisation und wird
in einigen Firmen als Begriff verwendet.
11 Zeichen
{
12. Accessibility
• A11Y - Accessibility
• Techniken die die Zugänglichkeit zu einer Webseite erleichtern.
• Barrierefrei bzw. Barrierearm
• Screenreader die Texte vorlesen bzw. Braillezeilen ansteuern.
• Leichte Sprache
11 Zeichen
{
13. • speziell geregelte sprachliche Ausdrucksweise des Deutschen, die auf
besonders leichteVerständlichkeit abzielt
• umfasst neben Sprachregeln auch Rechtschreibregeln sowie
Empfehlungen zu Typografie und Mediengebrauch.
• soll Menschen, die aus unterschiedlichen Gründen über eine geringe
Kompetenz in der deutschen Sprache verfügen, dasVerstehen von
Texten erleichtern.
• https://de.wikipedia.org/wiki/Leichte_Sprache
Leichte Sprache?
16. Dateien
• .pot
Portable Object Template -Vorlagedatei für die Übersetzung
• .po
Portable Object - für Menschen lesbare Übersetzung
• .mo
Message Object - Maschinen lesbare Übersetzungsdatei
17. WordPress übersetzen
• Nur mal einen einzelnen String übersetzen oder die bestehende
Übersetzung bearbeiten?
• Öfter Mitarbeiten?
• Handbuch
• Codex
• MakeBlog
• Slack / P2 Blog
• Was habe ich davon?
18. WordPress übersetzen
Nur mal einen einzelnen
String übersetzen oder die
bestehende Übersetzung
bearbeiten?
translate.wordpress.org
19. WordPress übersetzen
Das Handbuch für
Übersetzer
https://make.wordpress.org/
polyglots/handbook/tools/
glotpress-translate-
wordpress-org/
28. • Software wie auf
translate.wordpress.org
• selbstgehostet, für eigene
Übersetzungen
• https://github.com/GlotPress/
GlotPress
GlotPress
29. • Warum sollte es übersetzbar sein?
• Warum sind viele nicht übersetzbar?
• Wie mache ich ein Theme/Plugin übersetzbar?
• Beispiel eines Textes,
Theme/Plugins vorbereiten
30. Warum sollte es übersetzbar sein?
• Kunde braucht es in einer anderen Sprache
• Projext x braucht andere Formulierungen
• Theme/Plugin soll weltweit nutzbar sein
• Übersetzung gefällt einem nicht
• Keinen Anwender ausschliessen nur weil sie
kein deutsch/englisch können
31. Warum sind viele nicht übersetzbar?
• Programmierer weiß nicht wie es geht
• Nur für eigenen Bedarf gebaut
• Keine Lust
• Eigene Lösung
• Ignoranz/Arroganz - „Rest der Welt“
ausgeblendet.
32. Wie mach ich mein Plugin übersetzbar?
<?php
/*
Plugin Name: Beispiel-Dummy
Plugin URI: http://wpmeetup-franken.de
Description: Beispiel Plugin für Übersetzung
Version: 0.1
Author: Frank Staude
Author URI: http://www.staude.net
License: GPLv2 or later
*/
add_filter( 'option_blogdescription', 'headertext');
function headertext( $text ) {
return ( 'Hello, World!' );
}
33. <?php
/*
Plugin Name: Beispiel-Dummy
Plugin URI: http://wpmeetup-franken.de
Description: Beispiel Plugin für Übersetzung
Version: 0.1
Author: Frank Staude
Author URI: http://www.staude.net
Text Domain: dummy-plugin
Domain Path: /languages
License: GPLv2 or later
*/
add_filter( 'option_blogdescription', 'headertext');
add_action( 'plugins_loaded', 'load_text' );
function load_text() {
load_plugin_textdomain( 'dummy-plugin', false,
dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
}
function headertext( $text ) {
return ( __( 'Hello, World!', 'dummy-plugin' ) );
}
Wie mach ich mein Plugin übersetzbar?
41. Mit Texten arbeiten
• __() - gibt Text zurück
• _e() - gibt Text aus (e wie echo)
• _x() - gibt Text zurück (Kontext übergabe)
• _ex() - gibt Text aus (Kontext übergabe)
• _n() - gibt Text zurück (Plural)
• _nx() - gibt Text zurück (Plural und Kontext)
43. Tipps
• Datum via date_i18n()
• Zahlen via number_format_i18n()
• Parameter in printf immer nummerieren
%1$s damit der Übersetzer die Reihenfolge
ändern kann
44. Tipps
• Pfad zu Textdateien via filter änderbar
machen.
• Escapen bei Benutzereingaben und
Attributausgaben. Sicherheit!
• Testen,Testen,Testen