您好,欢迎访问一九零五行业门户网

如何使用wordpress钩子函数在发表文章的同时添加一条记录

如何使用wordpress钩子函数在发表文章的同时添加一条记录?
本文为大家介绍下如何使用wordpress的钩子函数,在发表文章的同时添加一条记录到投票表,下面是具体的实现,大家不要错过
  推荐:《wordpress教程》
我要对文章进行排序,按照投票数的多少排,已经投票的都会记录投票数,而没有投票的文章没有记录,默认投票为0,这时排序就有问题了,它先把有记录的文章进行排序,因为投票可能是负数,排完了负数再排列没有投票记录的文章,这个时候就会出现没有投票的文章也就是投票数为0的排在负数的后面,如图:
投票记录表 
生成的sql语句:
select wp_posts.id from wp_posts left join wp_wti_like_post on wp_wti_like_post.post_id=wp_posts.id where 1=1 and ( ( post_date_gmt > ’2013-11-16 12:17:03′ ) ) and wp_posts.post_type = ‘post’ and (wp_posts.post_status = ‘publish’ or wp_posts.post_status = ‘private’) order by wp_wti_like_post.value desc,wp_posts.post_date desc limit 5, 5
sql语句应该怎样写呢?
解决办法:
使用wordpress的钩子函数,在发表文章的同时添加一条记录到投票表不就可以了?
直接上代码:
代码如下:
//发表文章的同时插入数据到喜欢表function new_article($post_id){ global $wpdb; $ip = wtigetrealipaddress(); $query = "insert into {$wpdb->prefix}wti_like_post set "; $query .= "post_id = '" . $post_id . "', "; $query .= "value = '0', "; $query .= "date_time = '" . date('y-m-d h:i:s') . "', "; $query .= "ip = '$ip'"; $success = $wpdb->query($query); if($success){ return $post_id; }}add_action('publish_post', 'new_article');
把这段代码放到主题function.php里面。
以上就是如何使用wordpress钩子函数在发表文章的同时添加一条记录的详细内容。
其它类似信息

推荐信息