Hướng dẫn này mình hướng đến tạo giá trị - hỗ trợ mọi người và không nhằm mục đích thương mại. Trong hướng dẫn này mình chỉ vào trọng tâm tất tần tật về tùy biến website bằng code (hạn chế plugin nhiều nhất có thể) nên nội dung nó sẽ cực kỳ ngắn và không vòng vo. Hi vọng bạn không quá khó chịu vì sự quá ngắn gọn của mình.
- CODE chỉnh sửa mình thường can thiệp trực tiếp vào file (mục đích là để dễ kiểm soát vị trí hiển thị hơn là sử dụng hook)
- Nếu bạn có khó khăn hay cần mình hỗ trợ bất kì nội dung nào thì hãy để lại bình luận phía bên dưới, mình sẽ sớm ra nội dung hướng dẫn bạn.
- Nếu bạn thấy website mình có gì hay ho muốn ứng dụng lên website bạn thì liên hệ với mình để được hỗ trợ!
Xoá toàn bộ liên kết trong bài viết WordPress
Có khá nhiều dự án team SEO của chúng tôi cần xoá toàn bộ link trong bài viết WordPress (bao gồm xoá cả liên kết nội bộ và liên kết ngoài) để bắt đầu tối ưu cấu trúc SEO từ đầu. Dưới đây là code tôi hay áp dụng để delete toàn bộ liên kết trong post mà bạn có thể áp dụng.
Đoạn code dưới thực hiện hai việc:
- Đăng ký một hàm remove_all_links vào hook the_content của WordPress
- Hàm này sẽ loại bỏ tất cả các thẻ (liên kết) nhưng vẫn giữ lại nội dung text bên trong thẻ
add_filter('the_content', 'remove_all_links', 99); // Ưu tiên cao hơn (99)
function remove_all_links($content) {
$content = preg_replace('/<a\s+[^>]*>(.*?)<\/a>/is', '$1', $content);
return $content;
}Chi tiết code
add_filter('the_content', 'remove_all_links', 99);– Đây là hàm đăng ký bộ lọc (filter) cho nội dung bài viết WordPress. Số 99 là độ ưu tiên, càng cao thì sẽ chạy sau các filter khác.function remove_all_links($content) { ... }– Định nghĩa hàm xử lý nội dung bài viết.preg_replace('/<a\s+[^>]*>(.*?)<\/a>/is', '$1', $content);– Dùng regular expression (biểu thức chính quy) để:- Tìm tất cả các thẻ
<a>với mọi thuộc tính - Giữ lại chỉ nội dung bên trong thẻ (phần
$1) - Các cờ
ischo phép tìm kiếm không phân biệt hoa thường và trên nhiều dòng
- Tìm tất cả các thẻ
Nhưng nếu bạn chỉ muốn áp dụng cho một số bài viết hoặc danh mục cụ thể, bạn có thể sửa code như sau:
add_filter('the_content', 'remove_links_selectively', 99);
function remove_links_selectively($content) {
// Chỉ áp dụng cho một danh mục cụ thể (ví dụ: ID = 5)
if (is_category(5) || in_category(5)) {
$content = preg_replace('/<a\s+[^>]*>(.*?)<\/a>/is', '$1', $content);
}
return $content;
}
Sau khi thêm code, hãy xem một bài viết có chứa liên kết để kiểm tra. Tất cả liên kết sẽ biến thành văn bản thường, không còn khả năng click được nữa.
Nếu bạn gặp khó khăn trong chỉnh sửa hoặc muốn phát triển tính năng riêng cho website thì có thể tham khảo dịch vụ bảo trì - phát triển tính năng website wordpress tại TNDigi nhé!
Mình tự học - tìm hiểu - nghiên cứu và làm việc với WordPress được khoảng thời gian nhất định nên lên serial chia sẻ những gì mà mình từng gặp qua. Sẽ có nhiều thiếu sót nên nếu như có chổ nào chưa đúng hay chưa hoạt động được bạn contact với mình để hoàn thiện hơn.
Ghi chú quan trọng:
Cách tuỳ biến không cần can thiệp vào CODE mà sử dụng hook (nếu chưa có trong hướng dẫn) sẽ được mình sớm cập nhật!
Kênh Zalo hỗ trợ miễn phí. Chúc bạn áp dụng thành công!
Tặng mình 1 vote tăng động lực ra thêm nội dung:TNDigi cho ra mắt Hướng dẫn thiết kế website bằng wordpress từ cơ bản đến nâng cao miễn phí
Hướng dẫn gồm có 2 phần: phần 1 hướng dẫn bạn cách làm website | phần 2 hướng dẫn bạn tuỳ biến, phát triển tính năng website bằng CODE


