web-dev-qa-db-ja.com

is_main_query()が動作しない WP REST API

私の最初の状況は、私がカスタム投稿タイプeventsを持っているということです。ユーザーが複数の日付を入力できるカスタムUI(バックエンド)があります。その後、各日付はタイムスタンプとして投稿メタとして保存されます。

投稿をそのタイムスタンプに基づいて表示するように、クエリを変更するためにpre_get_posts(および他のいくつかのフィルター/アクション)を使用しています。デフォルトの投稿タイプのアーカイブページを呼び出すときには、これは完璧に機能しています( http://www.example.com/ [post-type-slug] / ) 。

私たちは現在、携帯電話用のアプリを開発中で、そのアプリはその後イベントを表示します。イベントデータの取得にはWP REST AP​​Iを使用しています。問題は、REST AP​​Iを使用するとis_main_query()が常にfalseを返すことです。

誰もが私がこの問題を回避することができる方法を知っていますか?

1
Stefan

質問に直接答えるには - REST AP​​Iはメインクエリを初期化しません。そのため、そのようになるリクエストには何もないはずです。

あなたがすべきことはあなた自身のエンドポイントを作成し、あなたがそれに必要なカスタムデータをサーバすることです。 REST AP​​Iを変更することは可能ですが、そもそも一貫した文書化されたAPIを持つという全体的な考えに違反します。

2
Mark Kaplun