Hướng dẫn mở link bình luận trong tab mới (website WordPress) mà không cần sử dụng plugin.
Mở external link trong tab mới là một trong những phương pháp hiệu quả để giúp giảm tỉ lệ thoát (bounce rate) cho website của bạn. Trong những bài viết trước đây, tôi đã từng hướng dẫn cho các bạn cách thiết lập để mở các liên kết có trong bài viết hoặc trên menu trong một tab trình duyệt mới rồi phải không nào? Vậy làm thế nào để làm điều tương tự với các liên kết có trong bình luận? Ý tôi ở đây là các liên kết có trong mục website của khung bình luận.
Tham khảo thêm:
- Làm thế nào để mở tab mới khi bấm vào menu WordPress?
- Tự động nofollow các liên kết ngoài cho WordPress
Thông thường, cách đơn giản nhất để làm điều này là sử dụng plugin External Links (download). Tuy nhiên, nếu bạn là một người “anti plugin” vì sợ chúng có thể gây ảnh hưởng nghiêm trọng đến tốc độ load của website thì ngay sau đây là giải pháp.
Làm thế nào để mở link bình luận trong tab mới?
1. Đầu tiên, các bạn cần phải truy cập vào thư mục cài đặt WordPress thông qua phần mềm FTP hoặc File Manager của cPanel/ DirectAdmin.
2. Trong thư mục /wp-includes/
tìm tập tin comment-template.php
và mở nó ra.
3. Dùng tổ hợp phím Ctrl
+ F
để tìm dòng code sau:
$return = "<a href='$url' rel='external nofollow' class='url'>$author</a>";
Và sửa thành:
$return = "<a href='$url' rel='external nofollow' class='url' target='_blank'>$author</a>";
Sau khi hoàn tất, hãy click vào nút Save Changes để lưu lại.
Bây giờ hãy thử truy cập vào website của bạn, click vào một link có trong tên người bình luận để xem nó đã tự động mở trong tab mới chưa nhé. Nếu vẫn chưa, bạn cần phải mở các tập tin giao diện (theme) ra để tìm và chỉnh sửa tiếp. Do mỗi theme có một cấu trúc khác nhau nên tôi không thể đưa ra hướng dẫn chung được.
Mở link bình luận trong tab mới với Genesis Framework
Đối với Genesis Framework, các bạn truy cập thư mục /genesis/lib/structure/
và mở file comments.php
ra. Tìm dòng code sau:
$author = sprintf( '<a href="%s" %s>%s</a>', esc_url( $url ), genesis_attr( 'comment-author-link' ), $author );
Và sửa thành:
$author = sprintf( '<a href="%s" target="_blank" %s>%s</a>', esc_url( $url ), genesis_attr( 'comment-author-link' ), $author );
Lưu các thiết lập sau khi hoàn tất. Xong! Giờ thì hãy thử truy cập vào website và tận hưởng thành quả nhé.
Kết luận
Ưu điểm của phương pháp này là bạn không cần cài thêm plugin. Tuy nhiên, nhược điểm của nó là khá phức tạp đối với những người không rành về code PHP. Ngoài ra, mọi thiết lập sẽ biến mất sau khi update WordPress và Genesis Framework. Bạn buộc phải tiến hành lại công việc từ đầu. Nếu không thông thạo mã nguồn PHP, tốt nhất bạn nên sử dụng plugin External Links mà tôi đã giới thiệu ở đầu bài viết.
Nếu bạn thích bài viết này, hãy theo dõi blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất nhé. Cảm ơn rất nhiều. :)
javascripts em không bao giờ sài nó vì thấy mấy bác bảo có cái này là anh gg phạt chết
Ở Genesis bạn nên hướng dẫn làm ở childtheme – Chứ can thiệp theme gốc thế update 1 cái là mất.
Bất đắc dĩ mới phải hướng dẫn can thiệp vào framework đó bạn. Có ai muốn như vậy đâu. :P
Chào admin
Em muốn tạo 1 khung khai thông tin cho khách truy cập, mà sau khi khách điền thông tin xong và bấm gửi thì xuất hiện lên web (dạng như đăng tin rao bán nhà đất vậy). Mà em chưa biết làm như thế nào, admin gợi ý giúp e với
Em cảm ơn
Hay quá cảm ơn bác nhé
Ích kỉ kiểu này bạn bè kỳ thị chết :v
có đoạn code nào tự thêm cho những link liên kết ngoài trong bài viết tự mở tab mới không a. e xem trên mạng có share đoạn code chèn vào funcitions.php mà viết bài ấn thử vẫn tự load trang luôn :(
Dùng plugin đi. :P
giúp e với e làm cách này của a nhưng e không thể sửa file này được. nó toàn báo lỗi “permission denied”. set quyền 777 cũng không set được a ạ. e không thể chỉnh sửa gì file này hết hic :(
nó báo là:
Error: rm /home/quan39837754/html/wp-includes/comment-template.php: permission denied
E set thằng thư mục to là wp-includes cũng không được luôn. không thể làm gì thư mục này hic
Host của GoDaddy thì còn nhiều vấn đề lắm. Đã xác định nghịch + phá thoải mái thì đừng bao giờ chọn host của GoDaddy. Lời khuyên chân thành đấy. :P
e đã chèn code này vào funcitions.php và thành công. có lẽ a nên thêm vào bài viết :P
function comment_links_in_new_tab($text) {
$return = str_replace(‘<a', '<a target="_blank"', $text);
return $return;
}
add_filter('get_comment_author_link', 'comment_links_in_new_tab');
add_filter('comment_text', 'comment_links_in_new_tab');
Code này mình dùng lâu rồi. Và cũng đã có trong theme Paradise phiên bản 4.2. Chỉ là mình chưa cập nhật vào bài viết mà thôi. :D
Tính hỏi lâu giờ mà site mình tắt luôn đánh website rồi.Bác hướng dẫn cách khi người ta bình luận mà đánh trang web thì nó mở cửa sổ mới đi.Ví dụ http://chimviet.net :)
Vụ này thì xài plugin External Links cho nhanh. All in one luôn. :D
Nhược điểm cứ mỗi lần upload sẽ bị mất, làm sai nguy cơ trắng trang theo em nghĩ xài javascripts có 2 dòng là ok rồi.
Nếu xài js thì chắc xài plugins External Links còn tốt hơn đó. Ít ra nó không chèn thêm js và css vào front-end. :D
duy nhất có 1kb js thôi bác, sử dụng css để làm gì?