你的例子是正确的,只是因为它有效。有数百种方法可以本地化显示的字符串,包括html,所有这些都以自己的方式很好且优雅。
我喜欢这样做:
printf( \'<div class="updated">
<p>%1$s</p>
</div>\',
__( \'All options are restored successfully.\', \'mytextdomain\' )
);
您也可以这样做:
$str = __( \'All options are restored successfully.\', \'mytextdomain\' );
echo "<div class=\'updated\'><p>$str</p></div>";
我想最重要的是保持可读性。没有一种“正确”的方法可以将本地化字符串与html结合起来显示。
对于第二个,我将使用:
_e( sprintf( \'On the <a href="%1$s">Import</a> page, choose the previously created file and click the <strong>Upload file and import</strong> button.\', get_admin_url() . \'import.php\' ), \'mytextdomain\' );
在这种情况下,不必翻译URL。