我使用 Qtranlate plus ( https://wordpress.org/plugins/qtranslate-xp/ ),我也使用 Yoast 的 Wordpress seo,但元标题和描述字段无法翻译。任何人都对此有修复或知道修复该问题的插件?
问问题
2724 次
1 回答
3
这个问题存在,因为 qTranslate 不是加号。有一个修复,来自 Yoast: http ://kb.yoast.com/article/52-wordpress-seo-qtranslate
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 );
add_filter( 'wpseo_opengraph_title', 'qtranslate_filter', 10, 1 );
这对我来说还不够……我跟踪了 $text 并看到语言语法被破坏了。不是
<!--:de-->, it was <!-:de->.
所以我直接在 qtranslate_filter($..) 中添加了一个替换。
function qtranslate_filter( $text ) {
$fixedOpenTag = str_replace("<!-:", "<!--:", $text);
$fixedCloseTag = str_replace("->", "-->", $fixedOpenTag);
return __($fixedCloseTag);
}
这适用于前端输出。我查看了 yoast 的源代码,但现在还没有修复它......
于 2014-10-31T01:08:29.163 回答