Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

I'm using WP 3.5 and Polylang 0.9.8 plugin to make translations to different languages.

All is good, and the plugin works fine, but now I'm facing a problem -- I need to translate custom strings, for example, strings inside widgets.

What can you recommend me to solve this problem?

ADDED: For example (I'm taling about text in widgets, but not header), can I add some string constants or so and write them from php-code into my page -- and got them to translate on String translation page of Polylang?

share|improve this question
    
This question isn't very answerable in its current form. How you'd address translating those strings has a lot to do with how your plugins and theme are written and is a big topic. –  s_ha_dum Jan 23 '13 at 23:53
    
How can I concrete question? –  troyane Jan 27 '13 at 19:01
add comment

1 Answer

up vote 1 down vote accepted

Use this

pll_register_string()

on functions.php

Use it like this:

pll_register_string

Allows plugins to add their own strings in the “strings translation” panel. The function must be called on admin side (the functions.php file is OK for themes).
Usage:

pll_register_string($name, $string, $multiline);
‘$name’ => (required) name provided for sorting convenience (ex: ‘myplugin’)
‘$string’ => (required) the string to translate
‘$multiline’ => (optional) if set to true, the translation text field will be multiline, defaults to false

So:

pll_register_string('Header Title', 'The title you want to appear');

Then on dashboard config, on languages, you are going to find a tap called "strings". There you're going to have this new created string, and an input text to fill the translation text for every active language on your site. Write translations, and then use the funcions:

pll_e() to directly echo, or pll__() to manually echo it. Your'ge going to use it like:

pll_e('The title you want to appear'); or
echo pll__('The title you want to appear');

That's it! :)

share|improve this answer
    
Thanx! That was issue! Strange, that question is simple, but no one answered for a long time. –  troyane Feb 14 '13 at 9:35
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.