Ví dụ trang web của bạn có rất nhiều tác giả thường xuyên đăng bài, việc WP Rocket xóa cache liên tục sẽ tạo gánh nặng rất lớn cho máy chủ. Để giải quyết vấn đề này, bạn có thể làm theo các bước sau.
Tắt chức năng xóa cache tự động
WP Rocket cung cấp một plugin mở rộng có tên WP Rocket | Disable Cache Clearing. Bạn cần cài đặt plugin này để ngăn WP Rocket xóa cache mỗi khi cập nhật nội dung.
Sau khi cài plugin, WP Rocket sẽ không còn tự động xóa cache khi bạn chỉnh sửa bài viết, trang, hoặc cập nhật plugin/theme nữa.
Ngăn xóa cache trang chủ
Tại functions.php, các bạn thêm dòng sau.
/**
* Ngăn xóa cache trang chủ
*/
add_filter( 'rocket_clean_home_after_clean_post', '__return_false' );
Tạo lại cache khi đăng bài mới
Bạn vẫn nên tạo lại cache cho trang chủ và các danh mục liên quan khi có bài viết mới được đăng.
Thêm đoạn mã sau vào functions.php:
/**
* Xóa cache khi bài viết mới được đăng (hoặc được cập nhật lên trạng thái publish)
*/
function clear_cache_when_publish_post($post_id, $post, $update) {
if (wp_is_post_revision($post_id)) return;
// Chỉ xử lý bài viết thường và trạng thái 'publish'
if ($post->post_type !== 'post' || $post->post_status !== 'publish') return;
// Chỉ thực hiện khi là bài viết mới hoặc chuyển từ trạng thái khác sang publish
if (!$update || get_post_status($post_id) !== 'publish') {
// Xóa cache trang chủ nếu plugin Rocket hỗ trợ
if (function_exists('rocket_clean_home')) {
rocket_clean_home();
}
// Xóa cache các trang danh mục liên quan
if (function_exists('rocket_clean_files')) {
foreach ((array) get_the_category($post_id) as $category) {
$cat_link = get_category_link($category->term_id);
if ($cat_link) {
rocket_clean_files($cat_link);
}
}
}
}
}
add_action('wp_insert_post', 'clear_cache_when_publish_post', 10, 3);
Kết luận
Bằng cách sử dụng plugin hỗ trợ và các đoạn mã tùy chỉnh, bạn có thể giảm thiểu hoạt động xóa cache không cần thiết và chỉ tạo lại cache khi thực sự cần thiết, giúp tối ưu hiệu suất cho các website có nhiều tác giả hoặc nội dung thay đổi liên tục.
Chúc bạn thành công!
Bình luận