0

以下のクエリを使用して、カスタム分類法からすべてのリンクを出力しています。分類法「単語」から「http」タグが付けられたすべての投稿を出力します。

出力からいくつかの一般的なカテゴリを除外したいと思います。だから、フェ。メディアとニュースのカテゴリのリンクのみを出力します。これを達成するための最良の方法は何ですか?

$wp_query->request = "

SELECT DISTINCT *

FROM $wpdb->posts

LEFT JOIN $wpdb->term_relationships ON($wpdb->posts.ID = $wpdb->term_relationships.object_id)

LEFT JOIN $wpdb->term_taxonomy ON($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id)

LEFT JOIN $wpdb->terms ON($wpdb->term_taxonomy.term_id = $wpdb->terms.term_id)

WHERE $wpdb->posts.post_type = 'post' 

AND $wpdb->posts.post_status = 'publish'

AND $wpdb->term_taxonomy.taxonomy = 'words'

AND $wpdb->terms.slug = 'http'

ORDER BY $wpdb->posts.post_date DESC

LIMIT $ppp OFFSET $offset";

$pagelinkposts = $wpdb->get_results($wp_query->request, OBJECT);
4

1 に答える 1

0

別のプラグインのコードを使用して、自分で解決策を見つけました。他の誰かが同じことを達成したい場合は、ORDER BY 行の前に以下を追加します (そして、カテゴリ ID を含めたいものに変更します)。

AND object_id IN
           (
            SELECT object_id
            FROM $wpdb->term_relationships AS r
            JOIN $wpdb->term_taxonomy AS x ON x.term_taxonomy_id = r.term_taxonomy_id
            JOIN $wpdb->terms AS t ON t.term_id = x.term_id
            WHERE   x.taxonomy = 'category'
            AND t.term_id IN  (category-ids))
于 2010-06-07T20:22:58.603 に答える