这是我第一次尝试WordPress插件开发,如果你们能给我任何帮助,我将不胜感激。
这个插件需要仔细跟踪用户如何与它的某些区域交互。我有一个表来记录数据。我已经编写了这个函数(在插件类中定义):
<小时>
public function update_history($userid,$idevent,$eventdesc,$log){
//get a database object
echo "we got here";
global $wpdb;
$wpdb->show_errors();
$table_name = $wpdb->prefix . \'pw_history_log\';
//values to write to database
$item = array(
\'iduser\' => $userid,
\'ieventcode\' => $idevent,
\'dtevent\' => date("Y-m-d H:i:s"),
\'szactiondesc\' => $eventdesc,
\'siteid\' => $log
);
// format values
$format = array(\'%d\',\'%d\',\'%s\',\'%s\',\'%d\');
// Insert the data
$wpdb->insert($table_name, $item, $format);
}
我试着在其他地方这样称呼它:
do_action( \'update_history\', 333, 2001, "test event", 1 );
add_action( \'init\', \'update_history\', 10, 4 );
我没有出错。我没有在数据库中获取数据。我也没有得到任何我抛出的愚蠢的回声声明的迹象。所以函数未运行。
有人能给我指出正确的方向吗?我觉得自己真的很笨。
编辑:我想我没有正确实例化admin类。我取出了试图调用函数的行,并添加了:
$plugin_name_admin = new Plugin_Admin("name", "1.0");
$plugin_name_admin->update_history(333, 2001, "test event", 1);
现在它正在工作!