用于翻译的 sprintf 字符串中单词的位置
Position of words in sprintf strings for translation
在某些语言中,单词的位置不同。
这是一个例子:
sprintf( __( '%s left a %s on %s\'s %s.', 'o2' ), $commentAuthor, $commentLink, $postAuthor, $postLink );
这个字符串returns例如:
John(1) 在 Jane(3) 上发表了 评论(2)的 post(4).
但是在法语中,有些词不在同一个位置:
John(1) commentaire(2) sur la publication( 4) de 简(3).
我在 poedit 中翻译了字符串:
%s a laissé un %s sur la %s de %s.
但是字错了:
John(1) 自由自在 commentaire(2) sur la Jane( 3) de publication(4).
这不是正确的翻译。
如何使用 poedit 或任何其他翻译编辑器更改顺序?
好吧,我终于找到了解决方案:
sprintf( __( '%1$s left a %2$s on %3$s\'s %4$s.', 'o2' ), $commentAuthor, $commentLink, $postAuthor, $postLink );
编辑中:
%1$s a laissé un %2$s sur la %4$s de %3$s.
在某些语言中,单词的位置不同。
这是一个例子:
sprintf( __( '%s left a %s on %s\'s %s.', 'o2' ), $commentAuthor, $commentLink, $postAuthor, $postLink );
这个字符串returns例如:
John(1) 在 Jane(3) 上发表了 评论(2)的 post(4).
但是在法语中,有些词不在同一个位置:
John(1) commentaire(2) sur la publication( 4) de 简(3).
我在 poedit 中翻译了字符串:
%s a laissé un %s sur la %s de %s.
但是字错了:
John(1) 自由自在 commentaire(2) sur la Jane( 3) de publication(4).
这不是正确的翻译。
如何使用 poedit 或任何其他翻译编辑器更改顺序?
好吧,我终于找到了解决方案:
sprintf( __( '%1$s left a %2$s on %3$s\'s %4$s.', 'o2' ), $commentAuthor, $commentLink, $postAuthor, $postLink );
编辑中:
%1$s a laissé un %2$s sur la %4$s de %3$s.