为了账号安全,请及时绑定邮箱和手机立即绑定

WordPress 跨域请求 JSON 并保存在本地

WordPress 跨域请求 JSON 并保存在本地

森栏 2019-04-08 11:18:09
我在给一个WordPress主题添加一个功能:在首页显示当地的PM2.5指数。使用了这个第三方服务.GET方法可以直接请求到JSON,但是请求次数有限制(比如一小时最多5次),所以我想用PHP请求到我要的JSON,然后保存在服务器上,这样用户访问页面时,直接从我的服务器上请求数据即可。现在我有这两种思路:我一开始的思路是,用PHP请求到JSON后,把JSON文件保存到wp-content/uploads目录(想法类似于上传文件),找到了wp_handle_upload这个函数(和一些零散的资料Link1,Link2),但是一直没弄明白怎么用,希望有用过的朋友能指点一下。后来又想到一个办法,在主题目录里面预先放一个JSON文件,然后用PHP请求第三方的数据之后再复写这个JSON文件。我想这样就避开了“上传”这个动作,直接操作一个JSON文件即可。请问上面那一种方式更可行?如果可行,具体需要用到哪些技术?我后端知识浅薄,希望大家不吝赐教,先多谢了!
查看完整描述

2 回答

?
萧十郎

TA贡献1815条经验 获得超13个赞

就一个小功能而已,不和WordPress扯上关系也完全么问题呀。直接写一个PHP文件,将抓取过来的JSON文件放到wp-content/uploads目录内,如果文件存在,则直接读取,不存在则进行抓取工作。文件的文件名可以采用“时间地点”的格式。至于主题里头直接就用file_get_contents获取就OK了。给个示例代码:
$name="20140129Beijing";
$file='./wp-content/uploads/'.$name.'.json';
$api_url="";
if(file_exist($file)){
echofile_get_contents($file);
}else{
$json=file_get_contents($api_url);
file_put_contents($json,$file);
echo$json;
}
?>
                            
查看完整回答
反对 回复 2019-04-08
  • 2 回答
  • 0 关注
  • 267 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信