Tôi đã thấy những cách khác nhau để tạo một văn bản với một siêu liên kết có thể dịch được. Tuy nhiên, tôi đã không thể tìm thấy một thực hành tốt nhất.
Vì vậy, đây là một số giải pháp tôi tìm thấy:
// 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' );
Suy nghĩ đầu tiên của tôi sẽ là phương pháp 1 sẽ là tốt nhất. Nó không yêu cầu người dịch của bạn biết HTML. Nhưng nó cũng không cho phép những người làm điều đó với nó. Nó cũng khá KHÔ (Đừng lặp lại chính mình) vì bạn không phải dịch lại toàn bộ phần HTML nhiều lần.
Tuy nhiên, khi đăng câu hỏi này lên twitter, mọi người đã trả lời rằng phương pháp 3 sẽ tốt nhất như bạn có thể thấy ở đây .
Vì vậy, làm thế nào tôi nên tạo một văn bản với siêu liên kết có thể dịch trong WordPress?
_x
thay vì__