0

WordPress サイトのホームページ ブログ ロールに 10 個の追加の投稿を動的に挿入するとします。10 個の新しい投稿は、ユーザー インタラクションの後に追加されます。したがって、この例では、ユーザー インタラクションの JSON 応答がこの呼び出しの結果と同じであると仮定しましょう。

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

結果をホームページに追加し、新しい投稿が既存のものと同じ HTML を使用するようにする理想的な方法は何ですか?

私の考えでは、オプションは現在次のようです。

1- Javascript でループを記述し、ループ内の投稿に正しい html を記述します。しかし、それは翻訳のようなことを複雑にし、私はすでに PHP にループ テンプレートを持っているので、コードを複製するように感じます。

2- カスタム エンドポイントの作成。しかし、私が理解していることから、検索パラメーターを使用して新しい WP_Query() を作成し、すべての html を単一の変数で返す必要があると考えています (したがって、get_template_part() とコードの複製は不要です)。

3-私が持っていたハックなアイデアは、ページの読み込み時にサイトのどこかに投稿のhtmlの非表示の空のスケルトンを追加することでした. 次に、時が来たら、Javascript でループを実行し、毎回スケルトンを複製して、JSON から関連する投稿データを挿入します。しかし、これは私には厄介に感じます。

より良い方法はありますか?または、WP REST API の基本概念を誤解していますか?

4

1 に答える 1

2

あなたのアイデア #3 は、Handlebars のようなテンプレート言語を使用するように聞こえますが、必ずしもハックではありません。

HTML テンプレートを script タグで「非表示」にしてから、Javascript を使用して、Ajax 呼び出しからのデータでそれをレンダリングします。基本的なアイデアについては、こちらの例を参照してください: http://handlebarsjs.com/

于 2016-11-27T15:17:51.400 に答える