web-dev-qa-db-ja.com

分類法を使用してカスタム投稿用のフィルタを作成することに関する質問

これがカスタム投稿タイプと分類法への最初の進出です。私はtaxonomy-services.phpページを作成して、「Webサイト」スラッグに関連する投稿を表示しました。それはうまくいっているようです。

しかし、私は 'video'のように、他のスラッグに関連するservices.phpの他の投稿を見せたいと思います。

どちらもサービス分類法に該当します。 services.phpページでそれらをフィルタリングする方法がわからないのですが。

誰かがこの挑戦で私を助けてください。私は両方ともPHP/WordPressのノブなので、これを手早く勝ち取る必要があります。

1
user6979

あなたのtaxonomy-services.phpで、それに基づいて現在クエリされている用語フィルタは何かを確認することができます。

//get the current term
$term_slug = get_query_var( 'term' );
//get the current taxonomy
$taxonomyName = get_query_var( 'taxonomy' );
//get the term object if you want
$current_term = get_term_by( 'slug', $term_slug, $taxonomyName );

//then you can query your posts/custom based on that term
$s_query = NEW WP_Query(array('services' => $term_slug, 'post_type' => 'post'));

//then you can simply filter the posts
if ($current_term->term_slug == "websites"){
   while($s_query->have_posts){
      $s_query->the_post();
      //do websites loop
   }
}elseif ($current_term->term_slug == "video"){
   while($s_query->have_posts){
      $s_query->the_post();
      //do videos loop
   }
}else{
   while($s_query->have_posts){
      $s_query->the_post();
      //do any other loop of that taxonomy
   }
}
1
Bainternet