翻訳可能なハイパーリンクを使用してテキストを作成するさまざまな方法を見てきました。ただし、単一のベストプラクティスを見つけることができませんでした。
だから、ここに私が見つけた解決策のいくつかがあります:
// METHOD 1
sprintf( __( 'Please read %1$sthis%2$s.', 'tacoverdo-example-domain' ), '<a target="_blank" href="' . esc_url( 'https://goo.gl' ) . '">', '</a>' );
// METHOD 2
echo '<a target="_blank" href="' . esc_url( 'https://goo.gl' ) . '">';
_e( 'Please read this.', 'tacoverdo-example-domain' );
echo '</a>';
// METHOD 3
sprintf( __( 'Please read <a href="%s">this</a>.', 'tacoverdo-example-domain' ), esc_url( 'https://goo.gl' ) );
// METHOD 4
sprintf( __( 'Please read %sthis%s.', 'tacoverdo-example-domain' ), '<a target="_blank" href="' . esc_url( 'https://goo.gl' ) . '">', '</a>' );
// METHOD 5
_e( 'Please read <a target="_blank" href="' . esc_url( 'https://goo.gl' ) . '">this</a>', 'tacoverdo-example-domain' );
私の最初の考えは、方法1が最善だろうということです。翻訳者がHTMLを知っている必要はありません。しかし、それはそれを台無しにするものを許可しません。また、HTML部分全体を何度も翻訳する必要がないため、非常に乾燥しています。
しかし、この質問をツイッターに投稿するとき、人々はあなたがここで見ることができるように方法3が最善であると答えました。
だから、WordPressで翻訳可能なハイパーリンク付きのテキストを作成するにはどうすればよいですか?
_x
代わりに__