下面是我的代码,使用qTranslate插件:
query_posts(array(\'post_type\' => \'uk_blog\', \'numberposts\' => 2));
$i = 0; while(have_posts()): the_post($post);?>
<div class="third-column"<?php if ($i == 1) echo \' style="margin-right:0;"\';?>>
<h2><a href="<?php get_permalink($post->ID);?>"><?php the_title();?></a></h2>
<div class="inner">
<?php $length = strlen(get_the_content());
echo nl2br(substr(strip_tags(get_the_content()), 0, 500));
if ($length > 500){
echo \'...<br /><a href="\' . get_permalink($post->ID) . \'">Read more</a>\';
}
?>
</div>
</div>
<?php $i++; endwhile;?>
帖子标题(使用\\u title();)实际上同时出现在所有语言中,即:英语标题法语标题西班牙语标题。
查看HTML源代码可以看到qTranslate标记,这些标记定义了字符串的哪一位是直接输出的语言。IE HTML源是
<!--:en-->English title<!--:--><!--:fr-->French title<!--:-->
帖子来自自定义帖子类型。
你知道为什么会这样吗?
感谢阅读!
SO网友:Daniel Sachs
Hi还将尝试以下操作:
将此添加到您的函数中。php
function get_qTrans_TitleText($text) {
$language=qtrans_getLanguage();
preg_match(\'/<!--:\'.$language.\'-->(.*?)<!--:-->/\', $text, $matches);
return strip_tags($matches[0]);
}
然后:
<?php echo get_qTrans_TitleText($text); ?>
不知道您有什么版本的qTranslate和WP,所以您甚至可以使用\\uuu()来获取正确的标题或\\u e()来回应它。