Превод на WordPress тема (EN, RU)


5

Вчера на workshop-а имаше няколко въпроса за превод на тема. Понеже не съм срещал материали на български по темата, с няколко думи да кажа каква е практиката.

Първо, всички статични стрингове в темата трябва да бъдат wrap-нати в __() или _e() функции. Форматът на функциите е:

 

__('Text to translate', 'yourtextdomain');

 

Където 'Text to translate' е статичният ви текст, а 'yourtextdomain' е произволен домейн, който ползвате за вашата тема. Този домейн е добре да се използва и за префикс на функциите ви във functions.php, за да избегнете конфликт с името на функция от ядрото или някой от плъгините.

Примерно, ако темата ви се казва Pesho Theme, може префиксът ви да е 'pst' или 'pesho' - сиреч свързано с името, кратко и възможно най-уникално.

Разликата между __() и _e() е, че първата функция връща променлива:

$translated = __('Translated text', 'domain');

А втората директно вика 'echo' и става за извеждане. Има и още няколко функции, които са малко по-конкретни.

Малко повече за процеса на превеждане - в Кодекса, както и една статия от днес на руски.


в CMS системи (2013) от Mario Peshev (0 точки)


Отговори



1

А в случаите, когато ни трябва двуезичен/многоезичен сайт?

Можеш ли да препоръчаш плъгин?

В момента се боря с qTranslate и ей тази тема - Extensio .

Има проблем с превода на custom хединги, уиджети и форми.

Авторът на темата не е от най-отзивчивите, а форумът на qTranslate е пълен с неотговорени въпроси; единствено един българин - Никола Николов се включва и помага.

Въпросът ми всъщност е дали си струва да се мъча с qTranslate или да се отказвам докато не е станало късно и съвсем не се е омазала базата данни.

Ако qTranslate  не става, има ли друг читав безплатен плъгин или само WPML ще свърши работа?

 


от arabella (2576 точки)


0
Arabella, спомням си, че и аз преди време не можах да се преборя с qTranslate.
Сега ползвам Polylang - безплатен е и за моите цели върши идеална работа. Не знам дали и на теб ще ти свърши, но ако искаш го погледни:)


0
безплатен читав - няма.
За преводи на хединги и статичен текст от темата - никой плъгин няма да може да ти помогне, ако са хардкоднати. Ако темата не е translation-ready, можеш или да я смениш, или да превеждаш оригиналната тема (или да направиш child тема с ВСИЧКИ темплейти copy-paste, но с i18n функциите __() и _e() ), иначе плъгин като WPML би помогнал за неща като менюта и стандартни уиджети и тн неща от ядрото.
По принцип имам лиценз/копие към WPML, защото съм работил там преди година и нещо, но не е много лоялно към тях да го раздавам. Иначе лицензите, които те продават, са 'екипни' и 'многосайтови' - един лиценз може да се ползва от екип за неограничен брой сайтове, т.е. може да се организирате и легално да си имате една групичка.

от Mario Peshev (0 точки)