Я видел разные способы сделать текст с переводимой гиперссылкой. Однако я не смог найти ни одной лучшей практики.
Итак, вот некоторые из решений, которые я нашел:
// 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
вместо__