我正在为自定义主题创建翻译,特别是主题的自定义模板文件和用户Poedit来创建pot模板。
翻译完文件后,无论我做什么,模板中的一行都不会翻译。
<?php echo __( \'Featured\', \'mytextdomain\' ); ?>
可能有用的其他信息:
此行不在wordpress循环中如果我删除echo
仅分开和离开__()
它甚至不会输出单词;“特色”;用英语代替echo__()
具有_e()
"E;“特色”;输出类似问题也可定制”;阅读更多“;表单函数。php未翻译。
function new_excerpt_more($more) { global $post; return \' …\' . __(\'<a class="more-link" href="\'. get_permalink($post->ID) . \'">Read More</a>\'); }
这里肯定有什么地方我做错了,因为除了这两个实例之外,其他所有的东西都会被翻译和输出。
知道我做错了什么吗?
SO网友:Ivan Shatsky
您的第一行代码看起来不错,您确定有\'Featured\'
采购订单文件中的字符串?第二个问题是一个很好的例子,说明了不应该使用gettext函数。您正在尝试转换动态字符串\'<a class="more-link" href="\'. get_permalink($post->ID) . \'">Read More</a>\'
您应该为每个不同的get_permalink($post->ID)
价值你应该做的是
return \' …<a class="more-link" href="\'. get_permalink( $post->ID ) . \'">\' . __( \'Read More\', \'mytextdomain\' ) . \'</a>\';
或
return sprintf( \' …<a class="more-link" href="%s">%s</a>\', get_permalink( $post->ID ), __( \'Read More\', \'mytextdomain\' ) );
只翻译
\'Read More\'
短语