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 から離れようとしています。