WordPress中带有html标签和数字的字符串的国际化

时间:2017-02-07 作者:Kiran Dash

如何翻译中间带有标记的字符串。

假设有一个字符串

$a = 5;
There are <?php echo $a; ?> <span>people</span> in this country.
Javascript文件:

wp_localize_script( \'store-locator\', \'storelocatorjstext\', array(
    \'nostores\'   => __( \'There are 5 people in this country.\', \'textdomain\' )
) );
将此类案件国际化的正确方式是什么?

我的方法:

<?php _e(\'There are 5 <span>people</span> in this country.\', \'textdomain\'); ?>

1 个回复
最合适的回答,由SO网友:Jeffrey von Grumbkow 整理而成

您可以将译文包装在printf 作用printf (或sprintf 当您不想立即打印到屏幕上时)允许您在字符串中放置占位符。请参阅所有类型说明符的文档

使用\\uuuu()而不是\\u e(),因为printf已经输出到屏幕。

$no_people = 5;

printf( __( \'There are %d <span>people</span> in this country.\', \'textdomain\' ), $no_people );
<小时>

Edit

为wp\\u localize\\u脚本添加了示例

$no\\U人数=5人;

$nostores = sprintf( __( \'There are %d <span>people</span> in this country.\', \'textdomain\' ), $no_people );

wp_localize_script( \'store-locator\', \'storelocatorjstext\', array(
    \'nostores\'   => $nostores
) );

相关推荐

Plugin Localization

我刚刚为wp构建了我的第一个插件,即使它不是一个伟大的“代码诗意”;)它正常工作。这是一个使用GalleryView 3.0 jquery插件转换默认wp库的插件(http://spaceforaname.com/galleryview).我唯一不能做的就是本地化。此插件的本地化意味着转换管理界面,在这里可以配置jquery插件选项来更改结果库的外观。我试着关注网络上数百万的教程,在论坛上阅读了很多关于这个问题的帖子,并遵循了codex的指南。。。但仍然没有运气。这就是我所做的:每个文本行都位于gette