Hej derude :)
Jeg roder med noget Qtranslate hvilket i sig selv fungere fint.
Jeg ønsker samtidigt at forbinde mine egne language .mo filer til mit theme, så det er nemt i fremtiden at tilføje et nyt sprog selvom noget tekst er hard-coded.
Jeg kan ikke få det til at virke.
I følge Qtranslate er løsningen at hard-code:
<?php _e("<!--:en-->english text<!--:--><!--:de-->Dansk tekst<!--:-->"); ?> de steder hvor man ønsker at teksten skal kunne ændre sprog.
Jeg synes det er en dårlig og forvirrende løsning.
Jeg har derfor prøvet følgende:
en-US.mo filen befinder sig i themes/ceiba/languages
function.php
load_theme_textdomain( 'ceiba', TEMPLATEPATH . '/languages' );
$locale = get_locale();
$locale_file = TEMPLATEPATH . "/languages/$locale.php";
if ( is_readable( $locale_file ) )
require_once( $locale_file );
kontakt2.php
<?php printf(__("Mobil")); ?>
<?php printf(__("Hverdage")); ?>
en-US.po før den bliver genererede til en-US.mo med POedit ser således ud:
msgid ""
msgstr ""
"Project-Id-Version: Ceiba\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-KeywordsList: _;gettext;gettext_noop;__\n"
"X-Poedit-Basepath: .\n"
"X-Poedit-Language: English\n"
"X-Poedit-Country: UNITED STATES\n"
"X-Poedit-SourceCharset: utf-8\n"
#: kontakt2.php:21
msgid "Mobil"
msgstr "Cell"
#: kontakt2.php:25
msgid "Hverdage"
msgstr "Weekdays"
Ved at gøre overstående ønsker jeg at når man trykker på sidens Qtranslate flag (tilføjet via plugin) at der også skiftes sprog på det hard-coded tekst.
Er der nogen der kan se hvad jeg gør forkert - Eller kan man overhovedet gøre det på denne måde?
p.s jeg har kigget efter lignende problemer i dette forum dog uden held.
Venlig Hilsen
Lars Møller