要通过单页网站调用WordPress博客,并让每一篇新发布的文章自动出现在网页中,核心是抓取博客的RSS源或调用WP的REST API。前者适合快速部署,后者更适合需要定制内容样式的场景。
最稳妥且不依赖第三方插件的方式,是直接利用WordPress内置的RSS输出功能。你在博客后台的固定链接设置中,将文章链接结构改为带“/feed/”的格式,系统就会自动生成一个标准XML文件,例如你的博客地址是`example.com/feed/`。这个URL会实时反映最新发布的内容,包括标题、摘要、正文、发布时间和作者信息。
在单页网站上实现调用的具体做法,可以在页面底部或侧边栏嵌入一段JavaScript代码,使用原生的`fetch`方法请求该RSS地址。浏览器解析XML后,遍历其中`item`标签下的数据,再通过`DOM操作`动态生成文章列表。需要留意的是,浏览器有同源策略限制,如果网站域名与博客域名不一致,请求会被拦截。解决方法是**在后端做一层代理**,即由你的网站服务器代替前端发起请求,再把结果返回给页面。以PHP为例,在网站根目录新建一个`proxy.php`文件,代码逻辑很简单:先用`file_get_contents`读取远程RSS地址,再用`header(''Content-Type: application/xml'')`把内容原样输出给前端。
若你使用的是静态网站生成器或纯HTML页面,且没有后端环境,则需选择第三方跨域代理服务。这类服务通常免费但稳定性一般,建议在代码中加上异常处理,请求失败时提示“内容暂时无法获取”,避免页面出现空白区域。
相比RSS方式,WordPress自5.0版本起完善的REST API提供了更细粒度的数据控制。你可以在博客后台的`设置-固定链接`里看到可用的API路径,默认情况下,访问`example.com/wp-json/wp/v2/posts`会返回一个JSON数组,每一条包含`id`、`date`、`link`、`title`和`excerpt`字段。前端页面通过`fetch(''https://example.com/wp-json/wp/v2/posts?per_page=10'')`即可获取最近十篇文章。这样做的好处是数据格式清晰,不需要解析XML,而且可以设置请求参数筛选特定分类的文章。比如在URL后追加`&categories=6`,就只显示分类ID为6的内容。若博客启用了自定义文章类型,可把URL中的`posts`替换为对应的类型名称。

需要特别注意,如果博客安装在高性能虚拟主机上,频繁的API调用会增加数据库负载。建议在单页网站的服务器缓存层中,设置一段过期时间,例如每隔十分钟拉取一次最新数据并生成静态文件。这样用户请求时直接读取缓存文件,而不是每次实时访问博客,减轻博客压力。
在版面设计上,不必完全照搬博客的原始样式。你可以在前端用CSS控制文章标题的字体颜色、下划线和悬停效果,点击链接跳转到博客原文页面。若希望显示摘要而非全文,在RSS源中默认包含的摘要长度通常只有25个字左右,可在博客后台的`设置-阅读`中将“摘要长度”调整为200字符,再把`provide_feed`参数设为“完整摘要”。
对于有一定开发能力的技术人员,还有一种更灵活的方案:在WordPress后台新建一个页面模板,使用`WP_Query`类自定查询最新文章,直接在该模板中输出为JSON格式,然后在外部网站通过普通的`