Úvodní stránka › Fórum podpory WordPressu › Problémy s WordPressem › Jak přeložit tému,když základní soubory nemůžu najít?
Štítky: Hybrid, load_theme_textdomain(), Lokalizace
Zvolené téma obsahuje celkem 12 odpovědí. Do diskuze (5 účastníků) se naposledy zapojil uživatel neteyescz a poslední změna je stará 12 let, 5 měsíců.
-
AutorPříspěvky
-
26. února 2011 (19:03) #878
Ahoj wordpressáci,chtěl bych se zeptat jak přeložit tému s názvem hybrid(http://themehybrid.com/themes/hybrid) když v souborech témy je jakýsi veliký bordel.
Díkes.
26. února 2011 (20:40) #7900Stačilo by toto?
28. února 2011 (17:17) #7901Přesně tak, díky za odpověď.
Hybrid je spíše celý samostatný framework než jen šablona, takže je jeho správa trochu složitější a doporučuje se vůbec neupravovat, ale spíše tvořit na jejím základě vlastní odvozenou šablonu.
Lokalizaci je pak třeba realizovat prostřednictvím funkcí gettextu a přeložit tak příslušné jazykové .po soubory (a vygenerovat .mo soubory). Celé téma je ale trochu složitější a konkrétní detaily si už budete muset dohledat…
Další podrobnosti o překladu pluginů a šablon ve WordPressu naleznete také v našem fóru.
14. listopadu 2011 (12:56) #7902Ach, jak dalekou cestu jsem ušel… :-)))
16. listopadu 2011 (19:35) #7903Když už se tu řeší překlad šablony, měl bych jeden dotaz. Kupuji premium šablonu a budu ji chtít lokalizovat. Postup chápu, soubory mo, po mi dá vývojař, přeložím je v Poeditu, nahraji na server. Není mi ale jasný třetí krok v návodu od vývojářů:
If your theme does not already include it, you’ll need to add the following line to the very top of your functions.php file (just before the opening <?php tag):
<?php load_theme_textdomain(‘text_domain’); ?>
Notice “text_domain” above – it’s called the text domain name You can use any name you want, but you should use the same name that’s used throughout the theme in the gettext function.
So, for example, if your gettext functions look something like this:
<?php _e(“About the Author”, “wp-inspired”); ?> …
You’ll want to use “wp-inspired” in place of the text_domain above.
Konkrétně co má být v tom text_domain, aby to bylo stejné jako v gettextu? Co to je gettext sice trochu vím, ale kde to mám hledat, aby to bylo stejné? Nechci totiž dělat překlad, aby mi to pak nefungovalo a musel jsem to stejně překládat ručně v jednotlivých souborech šablony :)
Díky
16. listopadu 2011 (20:01) #7904kubalap:
Jedná se o jakýsi include překladu, více v dokumentaci: http://codex.wordpress.org/Function_Reference/load_theme_textdomain .
Neteyescz
16. listopadu 2011 (20:23) #7905neteyescz: A to jste pořád teprve na začátku :-)
kubalap: Jaké jsou první dva kroky? Když už je šablona gettextována, tak by se měly lokalizace také většinou automaticky načítat. Jediné, co mě napadá je možnost, že vývojáři nechávají načítat lokalizace pouze uživatele, kteří to opravdu potřebují (a funkce se pak nespouští všem uživatelům, kteří používají originální anglickou verzi). O jakou jde konkrétně šablonu?
16. listopadu 2011 (20:48) #7906admin: To sice ano, ale přeci jenom jsem výrazně pokročil.
16. listopadu 2011 (22:43) #7907Ty kroky jsou popsány zde:
http://www.solostream.com/blog/tutorials/translate-wordpress-theme/
17. listopadu 2011 (17:33) #7908Tak už jsem na to přišel asi, ale je to nehorázná blbost. Musím nejen přeložit po soubor, ale ke každému textu v šabloně pak přidat funkci… například <h2><?php _e(‘Not Found’, ‘text_domain’); ?></h2>
Raději to přeložím klasicky přes editor :)
17. listopadu 2011 (18:33) #7909neteyescz: Určitě, pokrok je opravdu velký, ale cesta před námi všemi ještě velmi dlouhá :-)
kubalap: Není to blbost, ale správný postup lokalizace šablony :-) Jde o tzv. gettextování, tedy přizpůsobení šablony pro překlad. Celý ten článek jsem pochopil spíše jako obecný návod a samotní autoři šablon z webu Solostream by to měli mít ve svých šablonách vše správně ošetřeno (u několika bodů to dokonce zmiňují). ten třetí bod je tam podle mě právě proto, že někdy je šablona gettextovaná, ale nenačítá automaticky překlad pomocí funkce load_theme_textdomain(), takže si ji tam musí doplnit všichni uživatelé, kteří budou překlad potřebovat.
17. listopadu 2011 (18:51) #7910No to chápu, že je to správný postup. Ale jaký je rozdíl mezi tím, když to přeložím v editoru a tím, když u každého textu musím vkládat funkci? Podle mě je to časově stejné, jen ušetřím čas za práci v Poeditu.
17. listopadu 2011 (19:21) #7911Máte pravdu, je to časově hodně podobné, ale rozhodně bych použil variantu GetTextu.
-
AutorPříspěvky
Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.