code

커스텀 투고 타입에서 모든 카테고리를 나열하는 방법

starcafe 2023. 2. 8. 18:07
반응형

커스텀 투고 타입에서 모든 카테고리를 나열하는 방법

저는 'dining'이라는 포스트 타입과 'dining-category'라는 분류법이 있습니다.

내가 하고 싶은 것은 내 바닥글 영역에 게시물 유형 'dining'의 모든 카테고리를 표시하는 것입니다.

WordPress 4.6에서get_terms는 권장되지 않습니다.이것 말고도 다른 것이 있습니다.get_categories) 읽어주세요

다음은 코드 예시입니다.

<?php
   $args = array(
               'taxonomy' => 'dining-category',
               'orderby' => 'name',
               'order'   => 'ASC'
           );

   $cats = get_categories($args);

   foreach($cats as $cat) {
?>
      <a href="<?php echo get_category_link( $cat->term_id ) ?>">
           <?php echo $cat->name; ?>
      </a>
<?php
   }
?>

이게 도움이 되길 바라.

    <?php
       $args = array(
       'type'                     => 'dining',
       'child_of'                 => 0,
       'parent'                   => '',
       'orderby'                  => 'name',
       'order'                    => 'ASC',
       'hide_empty'               => 1,
       'hierarchical'             => 1,
       'taxonomy'                 => 'dining-category',
       'pad_counts'               => false );
       $categories = get_categories($args);
       echo '<ul>';

       foreach ($categories as $category) {
         $url = get_term_link($category);?>
          <li><a href="<?php echo $url;?>"><?php echo $category->name; ?></a></li>
         <?php
       }
       echo '</ul>';
   ?>

카테고리가 할당되지 않은 게시물은 표시되지 않습니다.따라서 임의의 포스트를 할당합니다.이 코드는 완벽하게 작동합니다.

<?php 
$wcatTerms = get_terms(
'category', array('hide_empty' => 0, 'number' => 3, 'order' =>'asc', 'parent' =>0));
        foreach($wcatTerms as $wcatTerm) : 
    ?>
            <small><a href="<?php echo get_term_link( $wcatTerm->slug, $wcatTerm->taxonomy ); ?>"><?php echo $wcatTerm->name; ?></a></small>
                <?php
                    $args = array(
                        'post_type' => 'post',
                        'order' => 'ASC',
                        'tax_query' => array(
                            array(
                                'taxonomy' => 'category',
                                'field' => 'slug',
                                'terms' => $wcatTerm->slug,
                            )
                        ),
                        'posts_per_page' => 1
                    );
                    $loop = new WP_Query( $args );
                    while ( $loop->have_posts() ) : $loop->the_post();
                    $imgurl = get_the_post_thumbnail_url( get_the_ID(), 'full' );
                    $title=get_the_title($post->ID);
                ?>
              <a href="<?php the_permalink(); ?>">
                <?php the_title(); ?>
              </a>
            <?php endwhile; wp_reset_postdata(); ?> 
     <?php endforeach;  ?>

사용하다get_terms()slug별로 커스텀 분류법을 가져오는 함수. 당신의 경우 slug는 다이닝 카테고리입니다. wordpress codex 웹사이트에서 함수 참조를 읽고 이것을 시도해 보십시오.

언급URL : https://stackoverflow.com/questions/39652122/how-to-list-all-category-from-custom-post-type

반응형