0

Good Day,

I'm trying to translate my plugin but it doesn't seems to work.

I read that I should check the return value of "load_plugin_textdomain" to see if it's false (meaning it doesn't find my translation file), but I cannot find how to find this value.

Can someone point me in the right direction?

Thanks

EDIT As requested here is the lines to load it

function ap_action_init() {
    load_plugin_textdomain('my_plugin', false, WP_PLUGIN_DIR . '/languages' );
}

// Localization

// Add Actions
add_action('init', 'ap_action_init');
8
  • Can you post the code your are using?
    – cybmeta
    May 26, 2015 at 8:20
  • As Requested - The Line has been added
    – pSyToR
    May 26, 2015 at 8:24
  • What if you change WP_PLUGIN_DIR . '/languages' to WP_PLUGIN_DIR . '/my-plugin/languages/'? Check the path, it seems wrong in your code.
    – cybmeta
    May 26, 2015 at 8:26
  • 1
    Oh, sorry, checking the value returned by a function is a very basic PHP task I supposed you alreay know. Note that this site is for questions specific to WordPress, general questions about PHP are better asked in StackOverflow where there are PHP expert coders ready to help.
    – cybmeta
    May 26, 2015 at 10:23
  • 1
    Try Debug Translations.
    – fuxia
    May 26, 2015 at 11:08

1 Answer 1

2
global $langOK;
add_action( 'plugins_loaded', 'myplugin_load_textdomain' );
function myplugin_load_textdomain() {
    global $langOK;
    $langOK = load_plugin_textdomain( 'my-plugin', false, dirname( plugin_basename( __FILE__ ) ) . '/languages' );
}

Later you can check the value of $langOK ( TRUE = success, FALSE = failure ).

3
  • Thanks a lot Frank that's exactly what I was looking for!
    – pSyToR
    May 26, 2015 at 10:06
  • 2
    You could do simply $langOK = load_plugin_textdomain( 'my-plugin', false, dirname( plugin_basename( __FILE__ ) ) ); as load_plugin_textdomain() already returns true or false. I also would return the true or false in myplugin_load_textdomain instead of, or in addition to, using a global variable.
    – cybmeta
    May 26, 2015 at 10:25
  • First part is 100% true. Second - returning value from action callback is pointless as you cannot access it elswhere. You could react to success or failure within the callback by displaying a message or doing something else. May 26, 2015 at 12:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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