请注意the_author_meta()
不会返回meta值,但会回显它。这就是为什么这个名字突然在<p>
要素
使用get_the_author_meta()
如果需要返回(并处理)字段,而不仅仅是显示它。
我强烈建议您更改__()
同样,因为这对翻译人员没有用处,因为它缺少作为上下文的名称。
/* translators: %s: user\'s first name */
$text = sprintf(
__( "%s hasn\'t published any articles yet.", \'monochrome-pro\' ),
esc_html( get_the_author_meta( \'user_firstname\' ) )
);
echo \'<p>\' . $text . \'</p>\';
注意:如果你不信任你的翻译,你应该使用
esc_html()
在…上
$text
而不是用户元。正如评论中提到的,使用KSES函数有点过头了。如果您想去掉任何HTML标记(而不是仅仅转义它们),我会使用
wp_strip_all_tags()
.