WordPress – QTranslate and Yoast SEO

Translating Websites

A client’s WordPress website needed some love in regards to its SEO and as it is a multilingual site, it has QTranslate in combination with Yoast SEO.

For the most part these 2 plugins work great individually, but when combined there are some serious issues with SEO of foreign languages with regards to meta title and meta description tags for pages and posts.

After hunting around a little in the search engines I was terribly relieved to find the post on the WordPress forum, which provided some awesome insights.  However, there still appeared to be a problem with the title tags, and I was not able to determine a solution that I found satisfactory.

Some investigation seemed to come up with a suitable result.  So if you are having issues, consider following the instructions below and see how you get on.  I would really, really appreciate your feedback as I have only recently implemented this change so thorough testing has yet to be conducted.  Please note that the standard QTranslate syntax will need to be used for the meta title and description (e.g. <!–:en–>English<!–:–><!–:es–>Spanish<!–:–>).

From the forum post linked above, add the following into the functions.php script of the theme you are using:

// Enable qTranslate for WordPress SEO
function qtranslate_filter($text){
return __($text);
}

add_filter(‘wpseo_title’, ‘qtranslate_filter’, 10, 1);
add_filter(‘wpseo_metadesc’, ‘qtranslate_filter’, 10, 1);
add_filter(‘wpseo_metakey’, ‘qtranslate_filter’, 10, 1);

and that works fine with exception to the title tag.  For this I made the change to the Yoast plugin file /wp-content/plugins/wordpress-seo/frontend/class-frontend.php, which included replacing the line:

return esc_html( strip_tags( stripslashes( apply_filters( ‘wpseo_title’, $title ) ) ) );

with:

return esc_html( strip_tags( stripslashes( apply_filters(  ’wpseo_title’, wpseo_get_value( ‘title’ ) ) ) ) );

Save and check.  This appears to work fine for me, but please try for yourself and let me know your feedback in the comments section below.

Many thanks and happy translating. :)

UPDATE

The above solution works with Yoast versions 1.2.8.7 or older.

If your version of Yoast is 1.3 or newer the above solution will not work (your qTranslate code will be stripped out when you save).  We are currently working on a fix and will post it here when completed.  If you would like to be emailed once we’ve found a fix, just post “Please let me know when you’ve found the fix for Yoast version 1.3+” in the comments box below.

If you can’t wait until then, Yoast version 1.2.8.7 will do the trick in the meantime.

All versions of Yoast can be found here: http://wordpress.org/extend/plugins/wordpress-seo/developers/ 

This entry was posted in WordPress on by .

About WebHolism

We're an eco-loving, organic pixel creating, solar powered website conjurer who lives to help companies discover their awesome potential. Our specialities are green web design and ethical SEO. We also give really good hugs.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

10 thoughts on “WordPress – QTranslate and Yoast SEO

    1. Sara Thornton

      Hi Theo,

      Thanks for the update – sometimes this can be a cached page issue (i.e. not seeing the newly updated page), and often clearing your Joomla cache, and/or force refreshing your browser (CTRL + F5 a few times) can instantly fix the problem.

      Glad it all got sorted,
      Sara

      Reply
  1. Ravi

    Hi there Sara

    Been trying the above fix but wp keeps stripping away the qTranslate syntax from the Yoast plugin :(
    Any ideas?

    Kind regards
    Ravi

    Reply
    1. Sara Thornton

      Hi Ravi,

      We’ve carried out some testing, and it would seem that the Yoast version is the cause.
      The above solution works with Yoast versions 1.2.8.7 or older.

      If your version of Yoast is 1.3 or newer the above solution will not work (your qTranslate code will be stripped out when you save). We are currently working on a fix and will post it here when completed.

      If you can’t wait until then, Yoast version 1.2.8.7 will do the trick in the meantime.

      All versions of Yoast can be found here: http://wordpress.org/extend/plugins/wordpress-seo/developers/

      I hope this helps,
      Sara

      Reply