在Wordpress中使用对多个部分进行+1或-1投票


Vote +1 or -1 in Wordpress using on multiple parts

我制作了一个自定义的wordpress post类型,包含多个内容部分,每个部分都以相同的方式从数据库中提取。

现在我想进行一次向上和向下的投票,在没有页面刷新的情况下显示结果,并更新数据库中的分数。很像stackoverflow+和-投票。

在这里我找到了解决方案,但我无法将代码转移到wordpress:计数点击一个按钮,将其保存到MYSQL,然后显示当前值(AJAX、PHP)

我尝试了这样的东西,在wordpress语法中我需要哪些代码?

一个大问题是,每个块都是从数据库中构建的,那么我如何为每个块制作一个唯一的+和-按钮,并将其写回正确的数据库行?我可以插入类中每个部分的ID,然后读出这个类并写入数据库中的相应字段?

我的尝试:

global $wpdb;
$wpdb->update( 'my_database', array( 'vote' => $vote + 1 ), array( '%d') );

/*so here you select the already stored value and then you make an update to increment it*/
$myrows = $wpdb->get_results( "SELECT vote FROM my_database WHERE part_id = "??" );
$vote = mysql_fetch_assoc($myrows);
echo $vote['vote']+1;

非常感谢你的帮助。

假设您跟踪的每个项目都有一个唯一的标识符(part_id),有两种方法可以做到这一点:

  1. 创建一个值为part_id、plus_counter、minus_counter的新表或
  2. 附加到现有表part_id、plus_counter、minus_counter

当用户正在查看特定的部分时,根据part_id查询现有的表并相应地显示。

标记代码:SELECT plus_counter,minus_counter FROM table_name WHERE part_id='$part_id'