以前寫過一篇博文,利用 PHP 和 Memcache 實現網站,以下鏈接查看:http://www.jb51.net/article/51825.htm
今天就把該功能用到 wordpress 中,並實現把訪問次數保存到數據庫中。
MySQL 語句
首先在參數表中,添加訪問次數的默認數據
// 獲取所有浏覽次數
function get_all_visit_number()
{
$mc = new Memcache ();
// 使用wordpress自帶wpdb類
global $wpdb;
// 參數表
$table = "wp_options";
// 連接memcache
$mc->connect ( "127.0.0.1", 11211 );
// 獲取浏覽次數
$visit_number = $mc->get ( 'visit_number' );
// Memcache 中是否存有訪問次數
if (!$visit_number) {
// 不存在時,查詢數據庫
$querystr = "SELECT `option_value` FROM " .$table. " WHERE `option_name`='visit_number'";
$results = $wpdb->get_results($querystr);
// 把數據庫中存儲的值賦予memcache變量
$visit_number = intval($results[0]->option_value);
}
// 設置浏覽次數
$mc->set ( 'visit_number', ++$visit_number);
// 獲取浏覽次數
$visit_number = $mc->get ( 'visit_number' );
// 每達100次訪問量,更新到數據庫
if ($visit_number % 100 == 0) {
// 使用wordpress自帶wpdb類
$data_array = array(
'option_value' => $visit_number
);
$where_clause = array(
'option_name' => 'visit_number'
);
$wpdb->update($table,$data_array,$where_clause);
}
// 關閉memcache連接
$mc->close ();
return $visit_number;
}