WordPress 主题中的 REST API 应用:在主题中使用 API 获取和展示远程内容
WordPress REST API 不仅可以让外部应用获取网站内容,还可以让主题从其他 WordPress 网站或第三方服务获取内容。这种能力让主题可以聚合多个来源的内容,创建更丰富的信息展示页面。
使用 wp_remote_get 获取 API 数据
在主题中使用 wp_remote_get 函数发送 HTTP 请求到 REST API 端点。这个函数处理了所有的底层细节,包括 SSL 验证、超时处理和重定向。使用 wp_remote_retrieve_body 获取响应体,然后用 json_decode 解析 JSON 数据。
API 数据的缓存策略
API 请求是外部资源,响应速度不可控,因此必须做好缓存。使用 set_transient 和 get_transient 函数将 API 响应缓存到数据库中,设置合理的过期时间。这样可以在不频繁请求 API 的同时,保持数据的新鲜度。
API 请求的错误处理
外部 API 可能由于各种原因无法访问。在主题中必须实现完善的错误处理:检查 wp_remote_get 的返回值是否为 WP_Error,检查 HTTP 状态码是否为 200,并提供降级方案或友好的错误提示。
展示 API 数据的内容
将 API 获取的数据在主题中展示,需要根据数据的结构设计合适的展示模板。数据可能是文章列表、天气信息、社交媒体动态等。使用循环遍历数据,生成对应的 HTML 结构。
第三方 API 的认证
如果 API 需要认证,使用 API Key 或 OAuth 令牌。在主题设置中提供密钥配置入口,使用 sanitize_text_field 清洗存储的密钥。

