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
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 ) ) ) );
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.
The above solution works with Yoast versions 22.214.171.124 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 126.96.36.199 will do the trick in the meantime.