Popularity Contest 转换到 PostViews

前面在通过优化插件来提高 WordPress 运行效率中谈到:我一直使用的 Popularity Contest 这个插件,这个是非常好的插件,但是它一个很大的问题是对数据库操作实在太多了,因为要统计一篇日志在 single category archive home feed 等下的被阅读的次数,其实个人觉得只有在 single 下阅读次数是最重要的,如果要求提供 WordPress 运行效率的情况下,最好转换到 PostViews 这个插件。今天就把转换函数贴出来,本来想用 SQL 转换的,后来发现一个循环更容易解决问题,代码如下:

function Popularity_Contest_to_PostViews() {
	global $wpdb;
	$q = "select id from wp_posts where post_type='post' or post_type='page'";	
	$post_ids = $wpdb->get_results($q);	
	foreach ($post_ids as $post_id ){	
		$id = $post_id -> id;		
		$sql = "SELECT single_views FROM wp_ak_popularity WHERE post_id = $id";
		$views = $wpdb->get_results($sql);
		if ($views) {
			$view = $views[0]->single_views;
			if($view){
				if(!update_post_meta($id, 'views', $view)) {
					add_post_meta($id, 'views', $view, true);
				}
			}
		}
	}
}
Popularity_Contest_to_PostViews();

在激活 PostViews 插件之前,你把以上代码复制到你的模板的 footer.php 中,让其运行一次,删除以上代码,然后安装 PostViews 插件。

该函数在本站测试成功,但是为了保证你的数据的安全,请在使用之前,最好备份好数据库,以免出错,由此出现错误,本站概不负责。 :-) 挖哈哈!

标签:WordPress 插件

本人擅长Ai、Fw、Fl、Br、Ae、Pr、Id、Ps等软件的安装与卸载,精通CSS、JavaScript、PHP、ASP、C、C++、C#、Java、Ruby、Perl、Lisp、Python、Objective-C、ActionScript、Pascal等单词的拼写,熟悉Windows、Linux、OS X、Android、iOS、WP8等系统的开关机。

通过下面的方式来联系我们:

电邮:138762189@qq.com

联系QQ:点击这里给我发消息

官方站:www.tadke.com

※ ※ 联系请加我的企鹅号 ※※

※ ※技术支持请微信联系站长 ※※

Copyright © 2023 Tadke.com. 琼ICP备20000547号