2014-12-29 6 views
1

제가워드 프레스 카테고리 필터는 서브 카테고리를 필터링하지 않는

  • 부모 등 다수의 서브 카테고리가
    • 아이 1
    • 하위 2
    • 하위 3
    • 하위 4
맞춤 게시물 유형이있는

목록 (링크) 모든 하위 범주의 각 카테고리에 포함 된 사용자 정의 포스트의 수량 : 내가 도달하기 위해 노력하고 무엇

내 사용자 정의 카테고리의 템플릿입니다.

<div class="category"> 
<h3>Category:</h3> 
<?php 
    $args = array(
    'post_type' => 'books', 
    'orderby' => '_swauteur', 
    'order' => 'ASC', 
    'parent' => '513' 
       ); 
    $categories = get_categories($args); 
    foreach($categories as $category) { 
    echo '<div class="cat"><h2><a href="' . get_category_link($category->term_id) . '" title="' . sprintf(__("have a look at %s"), $category->name) . '" ' . '>' 
. $category->name.'</a></h2><br /><p>Books: '. $category->count.' </p></div> '; 
} 
?> 
</div> 

이것은 매력으로 작동합니다. 게시물이 포함 된 모든 카테고리를 얻습니다! 4 하위 범주

<div class="box"> 

    <div class="post-alt blog"> 

<ul class="article-list article-list--related"> 
<?php $books = new WP_Query($args); while ($books->have_posts()) : $books->the_post();?> 
<li class="article-list_item tile post-tile"> 
<article class="article-list_article"> 
    <section class="article"> 
     <div class="article_thumb"><?php if (has_post_thumbnail()) { the_post_thumbnail('thumbnail');} else { echo '<img src="' . get_bloginfo('stylesheet_directory') . '/images/placeholder.png" />';}?></div> 
     <div class="article_title"><h1><?php the_title(); ?></h1> 
      <p>Auteur: <?php echo get_post_meta($id, "_swauteur", true); ?></p> 
      <p class="article_pub-date">Publicatie datum:<?php echo date('d-m-Y', strtotime(get_post_meta($id, "_pubdatum",true)));?></p> 
     </div> 
     <div class="article_excerpt"> 
      <p class="article_excerpt_content"><?php the_excerpt(); ?></p> 
      <p><a title="<?php _e('Read More'); ?>" href="<?php the_permalink() ?>" rel="bookmark">Lees meer</a></p> 

     </div> 

    </section> 
    </article> 
</li>    
</ul> 

<?php endwhile; ?>   
       </div><!--/post-alt blog--> 

    <div class="navigation"> 
    <div class="alignleft"><?php next_posts_link(__('&laquo; Previous Entries')) ?> </div> 
    <div class="alignright"><?php previous_posts_link(__('Next Entries &raquo;')) ?></div> 
    </div>  

</div> <!--closebox--> 

    </div><!--/col1--> 

<?php get_sidebar(); ?> 

<?php get_footer(); ?> 

이것은 또한 노력의 루프에서 다음

모든 게시물, 나는 모든 범주의 모든 게시물을 얻을!

내가 아이 하나의 카테고리 링크를 클릭 할 때, 어떤 선택이 이루어지지 않기 때문에, 나는 아직도 모든 게시물을 얻을 둘의 조합을 만드는 방법을 알아낼 수 없습니다 : 여기

그러나

내 질문입니다 다른 하위 카테고리.

답변

1

원하는 인수 만 얻으려면 제한 인수와 함께 여러 개의 WP_Query를 사용해야합니다. 한 하위 범주로 제한하려면 여러 루프를 수행해야합니다.

이러한 카테고리 페이지에 대한 템플릿을 만들어 맞춤형 루프를 넣거나 코드를 반복하지 않으려면 $query 전체를 확인하는 category.php 템플릿을 만들어 하위 카테고리를 결정해야 할 수도 있습니다 루프를 생성하기 전에 올바른 $args을 설정하고 설정하십시오.

갱신 : 사용자 지정 쿼리를 사용할 때

, WP는 당신에게 사용자 정의 쿼리 $에 인수에 의해 지정된 게시물을 반환합니다. 정상적인 상황에서 WP는 $args을 기반으로 URL을 표시하고 해당 URL의 매개 변수를 쿼리합니다. 하위 카테고리 링크를 클릭하면 URL에 카테고리가 지정됩니다. 자신의 쿼리를 실행하기 때문에 WP는 현재 사용중인 페이지를 무시합니다. 글쎄, 실제로 무시하지는 않지만 전역 변수 $query에 루프가있는 반면 $books에서 루프를 표시하고 있습니다.

그래서 우리도 똑같이해야합니다. 사용자가 요구하는 어떤 종류 파악하고 책 쿼리에이 추가 :

'cat' => get_query_var('cat') 

기능 get_query_var GET의 당신을 정확하게합니다. WP가 uri와 그것의 매개 변수를 고려한다면 WP가 사용했던 모든 값을 얻을 수 있습니다.간결함을 위해 위의 행을 $args 배열에 immediatly 삽입 할 수 있습니다.

+0

(루프를 생성하기 전에 어떤 하위 카테고리가 올바른 $ args를 설정했는지 확인하기 위해 전역 $ 쿼리를 확인하는 category.php 템플릿을 만듭니다.) 나에게도 가장 좋은 방법이지만, 나는 이것을 할 수있는 방법이 없다. 어떤 도움이 가능 할까? – Jeroen

+0

하이 Nus, 명확한 설명을위한 thnx 그리고 이것은 참으로 일하고있다 ..... 감사합니다 – Jeroen

0

으로 쿼리를 재설정하십시오. wp_reset_query(); 및 쿼리 코드를 파괴하십시오. 다음과 같이 코드 : wp_reset_query(); 반면 (have_posts()) : // bla bla endwhile;

1

'taxonomy' => 'category-declared-into-cpt',을 $ args에 추가하는 CPT 카테고리를 가져올 수 있습니다.

CPT를 만들도록 선언 된 분류 체계를 추가해야합니다.