时间:2021-07-01 10:21:17 帮助过:47人阅读
以前写过一篇博文,利用 PHP 和 Memcache 实现网站,以下链接查看://www.gxlcms.com/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;
- }