WP Super Cache 是我推薦的最佳 WordPress 緩存插件,它把整個頁面直接生成 HTML 文件,這樣 Apache 就不用解析 PHP 腳本,通過使用這個插件,能使得你的 WordPress 博客將顯著的提速。
但是如果 WordPress 的首頁顯示的不是最新日志,而是一個頁面,并且這個頁面包含實時更新的部分,那么就會存在一個問題,那么這個頁面就不會實時更新。
這里我提供一個技巧,可以讓你在使用 WP Super Cache 的這個靜態(tài)緩存插件提速的同時,也能夠讓首頁實時更新,WP Super Cache 是通過 wp_cache_post_edit 這個函數(shù)來編輯緩存的,它的參數(shù)是日志或者頁面的 ID。
所以我們首先獲取用于顯示首頁的頁面的 ID,然后在日志更新或者刪除的時候,或者有新留言的時候(如果首頁沒有包含最新留言,這個可不必),刷新首頁。所以大致的代碼如下:
<?php
add_action('publish_post', 'refresh_front_page', 0); //發(fā)布或者更新日志時候刷新首頁
add_action('edit_post', 'refresh_front_page', 0); //有新留言或者留言被刪除的時候刷新首頁
add_action('delete_post', 'refresh_front_page', 0); //刪除日志時候刷新首頁
add_action('publish_phone', 'refresh_front_page', 0); //通過 email 發(fā)布日志之后刷新首頁
function refresh_front_page(){
$front_page_id = get_option('page_on_front'); //獲取顯示首頁的頁面 ID
wp_cache_post_edit($front_page_id); //刷新該頁
}
?>
把這段代碼復制到主題的 functions.php 即可。
當然如果你想刷新某個頁面,也可以是用 wp_cache_post_edit 這個刷新它,參數(shù)是頁面的 ID。
更多信息請查看IT技術(shù)專欄