用 WP REST API 调用的结果注入 HTML 的最佳方法?

Best way to inject HTML with the results of a WP REST API call?

假设您要动态注入 10 个额外的 post 到 WordPress 网站的主页博客卷。 10 个新的 post 是在一些用户交互后添加的。因此,对于此示例,我们假设用户交互的 JSON 响应与此调用的结果相同:

GET /wp-json/wp/v2/posts?s=awesome

将结果添加到主页的理想方法是什么,但要确保新 post 使用与现有结果相同的 HTML?

在我看来,目前的选项似乎是:

1- 在Javascript 中写一个循环,并在循环内为post 写出正确的html。但这会使翻译之类的事情变得复杂,而且我已经在 PHP 中有了循环模板,所以感觉就像在复制代码。

2- 编写自定义端点。但据我所知,我需要用搜索参数编写一个新的 WP_Query() ,然后 return 所有 html 在一个变量中(所以没有 get_template_part() 并再次复制代码)。

3- 我的一个古怪想法是在页面加载时在网站某处添加 html 或 post 的隐藏空骨架。然后到时候,在Javascript运行一个循环,每次克隆骨架,从JSON注入相关的post数据。但这让我觉得很恶心。

有没有更好的方法?还是我误解了 WP REST 的基本概念 API?

您的想法 #3 听起来很像使用像 Handlebars 这样的模板语言,并不一定是那么 hacky。

您将 "hide" 您的 HTML 模板放在脚本标记中,然后使用 Javascript 使用来自您的 Ajax 调用的数据呈现它。请参阅此处的示例以获取基本概念:http://handlebarsjs.com/