如何使用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钩子函数在发表文章的同时添加一条记录的详细内容,更多请关注慧达AI工具网其它相关文章!

转载请说明出处 内容投诉内容投诉
慧达seo-站长工具-seo工具-采集-发布-AI文章生成发布工具 » 如何使用wordpress钩子函数在发表文章的同时添加一条记录

慧达AI专注站群seo管理工具

查看演示 官网购买