通过REST API和Cronjob每日自动更新股票报价。或者有没有更复杂的方法?

时间:2018-05-22 作者:Julian Stark

我正在用WordPress建立一个股票数据库。有一个自定义的帖子类型stocks 使用字段last_priceytd_return (ACF)。该数据库将保存大约2000只股票。

对于股票报价,我计划使用alphavantage(https://www.alphavantage.co) 它提供了一个REST API来获取更新的报价。

由于我只需要一天结束时的数据,所以我计划如下:每天晚上在Wordpress内部运行一个“CronJob”,它会提取所有股票的最新股票报价,并计算年初至今的表现。

现在的问题是:最简单的方法是什么?循环浏览我所有的帖子(库存)并使用wp_remote_get() 要更新数据?我预计php执行时间会出现问题。。。

或者,有没有更好的方法可以用另一个php解决方案来实现我的目标?例如,我考虑在sql db中设置一个自己的表,并在其中插入新数据。

1 个回复
SO网友:Peter

我建议您将数据与wp数据分开。要实现您的想法,请为时间序列数据设置一个新的数据表。编写一个php脚本,从所需的源请求数据,并创建一个cronjob。如果宿主不提供cronjob创建,请使用cronjob服务。根据您请求的数据量,您可能需要创建大约10个cronjobs。

然后,为YTD性能值创建一个新表,并创建一个新的php脚本来计算YTD性能。这应该很快就能完成,所以您可能只需要一个cronjob(我想最多4个cronjobs)。

现在,您将在两个单独的表中获得时间序列数据和性能数据。要在WordPress中显示YTD数据,请创建shortcode 在您的functions.php 就像我做的那样here.

结束

相关推荐

使用自定义函数过滤REST API中的自定义帖子

我有3种自定义帖子类型:艺术家、歌曲、视频和视频都有一个元,可以对歌曲或视频的艺术家id进行排序,rest api中的视频过滤器无法返回按艺术家id过滤的帖子自定义元所以我必须通过自定义函数返回它,并在RESTAPI中显示它如何创建一个函数来比较艺术家id meta的值和返回具有特定艺术家id的帖子?类似这样的内容:/wp-json/wp/v2/songs?艺人=4438,返回艺人元价值为4438的歌曲谢谢