jqueryがテーブルにデータを入力するために使用するプラグイン用のAPIを作成するwordpressをいじっています。私がこれを行う方法を理解するのに助けが必要です。
最初のクエリ、これは「親」の投稿を取得します:
[q1]:
Select * from posts as p where p.ID IN ({SomeIDs I am requesting})
2 番目のクエリは、最初のクエリのすべての子を取得します。
[q2]:
Select * from posts as p where p.parent_postID IN ({the parentIDs from q1})
結果が 1 つの出力になるように、このクエリを実行するにはどうすればよいですか。子を表示するたびに2番目のクエリを実行し続ける必要はありません(子はデフォルトで表示されます。最初のクエリを制限できるようにするためです)。
最終結果:
_________________________________________________ | | ID | 親のポスト | タイトル | 混乱 | -------------------------------------------------- | | 894 | 0 | メインタイトル | メインディスク | | | 898 | 894 | 差分タイトル | デフディスク | | | 907 | 894 | ディフチルト | デフディスク | | | 910 | 0 | メインタイトル | メインディスク | | | 916 | 910 | 差分タイトル | デフディスク | | | 919 | 0 | メインタイトル | メインディスク | --------------------------------------------------
ID 919 には子がないことがわかりますが、それでも結果に表示したいと考えています。
だから私は参加しようとしましたが、私ができる別のタイプの参加がない限り、ID = post_parentID を持たないレコードを失います...
アイデアはq1の「LIMIT」で、組み合わせた結果がq2でソートされ、テーブルを作成するときのjQuerys forloopの結果は<TR>
、IDとpost_parentが一致する場合のbgを変更するだけです
これは私が使用しなければならないスキームです...Wordpressのものです。また、どの子を表示するかについて、q2 に追加の基準があるということでもありません。例。子に post_meta を追加します.... meta_key = 'lang_i18N' meta_value='en' なので、postmeta の q2 への結合を追加できます
アップデート:
これはq1です:
[q1]
選択する posts.ID AS myItem_ID, posts.post_parent AS 親 ID、 posts.post_title AS タイトル、 posts.post_content AS fullDesc、 posts.post_excerpt AS shortDesc、 posts.post_status AS ステータス、 posts.menu_order AS fetured_Order、 json_meta.meta_value AS json_input, meta.meta_value AS ベンダー ID、 vendor.post_title AS vendorName, posts.post_modified AS modifiedDate FROM wp_posts AS 投稿 左結合 wp_postmeta AS メタ ON meta.post_id = posts.ID 左結合wp_postmeta AS json_meta ON json_meta.post_id = posts.ID 左結合 wp_postmeta AS i18N ON i18N.post_id = posts.ID LEFT JOIN wp_posts AS ベンダー オン vendor.ID = meta.meta_value WHERE meta.meta_key = '代理店' AND json_meta.meta_key = 'json_input' AND posts.post_type = 'activity_item' AND posts.post_status = '公開' AND posts.ID IN (1080, 1231, 1273, 1882, 1937) リミット 0,2
[OK]で親のリストが表示されます...今、q1と同じ子を含めたいのですが、i18N = 'es'
意味が欲しいかもしれません。i18Nの値フィールドが何であれ、親が必要ですが、「es」である子が必要です。おそらく4人の子供がいるかもしれませんが、LIMITで2人の親のみを表示したいのですが、彼らが持っている多くの子供(子供を制限するものではありません)は、これを1つのクエリで行うことができますか?データ量が多いという理由だけで PHP から離れようとしています。