在WordPress中保存外部API调用

时间:2017-10-18 作者:Mark

我编写了一个WordPress页面,用户可以在上面提交自己的名字。按submit后,它将向外部API发送一个API请求,外部API将返回有关其名称的信息。这是一个简单的概述:

<form action="" method="post">
  Name: <br><input name="example" type="text" /><br>
  <input name="submit" type="submit" />
</form>

<?php
  if (isset($_POST[\'submit\'])) {
  $example = $_REQUEST[\'example\'];
  $result = $customcontact->lookupByName($example); /** API PHP Library */
  print_r($result);
  }
?>
在下一步中,我想保存这些请求,并简要概述每个用户的请求历史。这样他们就可以查看和检查以前的请求,而无需拨打新的电话。

有没有人能给我指出正确的方向,或者知道类似的教程/指南?

非常感谢!

做记号

1 个回复
最合适的回答,由SO网友:Tom 整理而成

做记号

我不得不为多个工作做类似的事情。这是一个更大的主题,但我会尝试将其分步骤分解,希望能让您朝着正确的方向前进。

我已将代码分解为多个步骤,并在此处概述了这些步骤:

if (isset($_POST[\'submit\'])) {
    $example = $_REQUEST[\'example\'];
    $result  = $customcontact->lookupByName( $example );
    /** API PHP Library */

    $save_data                      = array(); //step 1
    $key                            = time(); //step 2
    $save_data[ $key ][\'epoch\']     = $key; //step 3
    $save_data[ $key ][\'timestamp\'] = date( \'Y-m-d H:i:s\' ); //step 4
    $save_data[ $key ][\'data\']      = $result; //step 5

    $existing_log = maybe_unserialize( get_option( \'my_site_option_saved_data\' ) ); //step 6

    $existing_log[] = $save_data; //step 7

    update_option( \'my_site_option_saved_data\', maybe_serialize( $existing_log ) ); //step 8
}
获得数据后,创建一个新数组https://en.wikipedia.org/wiki/Unix_time)注意事项:

这不是很高效。有一个更好的方法,但如果您需要这个来进行测试,它会起作用get_option 并通过maybe_unserialize.

汤姆

EDIT

以下是我在回答中使用的WordPress函数的链接:

这里有一些附加链接,指向更一般的日志讨论和可在服务器端使用的软件。

结束

相关推荐

是否返回REST API v2中发布的所有自定义分类术语?目前限制为10个任期

我试图使用RESTAPI v2在单击项目自定义帖子类型项时填充一个模式窗口。项目具有自定义的分类法和技能。我正在使用_嵌入到JSON URL中,它将返回自定义分类法项,但对于每个返回的项目项,限制为10个术语。对于给定的项目项,我似乎无法让所有标记的技能返回。我将WordPress设置中的常规分页设置更新为20,认为这将调整返回的相关分类术语的数量:无更改。我添加了以下方法,以便通过REST访问分类法:add_action( \'init\', \'my_custom_taxonomy_rest_supp