- 加入我的QQ群
- 关注我的百家号
扫描下面的二维码,“关注”我的百家号。
我们经常看到一些wordpress CMS主题网站都是特别的炫,它们有着各种各样的特色功能,比如幻灯片、会员中心、文章顶踩……它们这么炫的功能都是怎样实现的呢?如果想在自己的主题中也添加这样的功能,应该怎么做呢?嗯,在接来的文章中,高时银博客将会陆续推出相关介绍。接下来我们将讲解如何给wordpressCMS主题添加顶踩功能,也就是wordpress主题的投票功能。要想添加顶踩功能,我们先要给顶踩添加一个数据表用来存放顶踩的数据。
添加数据表,我们可以手动到后台数据库中去添加,这样做有眯麻烦,而且对于使用我们CMS主题的人来说,可能还对数据库不太了解,以至不会添加。所以,我们要让wordpressCMS主题自己在激活时就自动新建一个数据表,这样就免去了手动创建数据表的麻烦。下面,就一起来看看怎样让wordpressCMS主题自动添加数据表。
要让wordpressCMS主题自动添加数据表,其实很简单,只要在主题的functions.php中添加如下代码就可以实现:
//激活主题时 自动一个 wp_post_vote 数据表
function ashu_load_theme() {
global $pagenow;
if ( is_admin() && 'themes.php' == $pagenow && isset( $_GET['activated'] ) )
ashu_vote_install(); //激活主题的时候执行ashu_vote_install()函数
}
add_action( 'load-themes.php', 'ashu_load_theme' );
function ashu_vote_install(){
global $wpdb;
//创建 _post_vote表 5个字段:id、user、post、rating、ip
$table_name = $wpdb->prefix . 'post_vote';
if( $wpdb->get_var("SHOW TABLES LIKE '$table_name'") != $table_name ) :
$sql = " CREATE TABLE `".$wpdb->prefix."post_vote` (
`id` BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`user` INT NOT NULL ,
`post` INT NOT NULL ,
`rating` varchar(10),
`ip` varchar(40)
) ENGINE = MYISAM DEFAULT CHARSET=utf8;";
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);
endif;
}
通过上面的代码,在主题被激活时,就会在wordpress数据库自动创建一个新表——wp_post_vote ,如下图:
这样,我们就为wordpressCMS主题的顶踩功能新建好了数据接收表了。在下面的章节里我们将接着介绍如何添加文章顶踩。