Articles
WP 블로그 및 위젯을 사용할 때 단일 게시물에 카테고리 이름을 표시하려면 어떻게해야합니까?
On 2월 16, 2021 by admin내 블로그에 무료 버전의 WP 블로그 및 위젯 플러그인을 사용하고 있습니다. 완벽하게 작동합니다.
제 문제는 현재 게시물 카테고리 이름을 단일 페이지에 표시해야한다는 것입니다. 그래서 카테고리 이름을 확인하기 위해 single.php 페이지에서 아래 코드를 시도했습니다.
p>
$cat = get_the_category(); print_r($cat);
하지만 카테고리 이름이 표시되지 않습니다. 빈 배열이 표시됩니다.
Array ( )
이 문제를 어떻게 해결할 수 있습니까?
Single.php
<?php /** * The template for displaying all single posts * * @link https://developer.wordpress.org/themes/basics/template-hierarchy/#single-post * * @package WordPress * @subpackage Twenty_Nineteen * @since 1.0.0 */ get_header(); ?> <section id="primary" class="content-area"> <main id="main" class="site-main"> <?php /* Start the Loop */ while ( have_posts() ) : the_post(); $cats = array(); foreach (get_the_category($post_id) as $c) { $cat = get_category($c); array_push($cats, $cat->name); } if (sizeOf($cats) > 0) { $post_categories = implode(", ", $cats); } else { $post_categories = "Not Assigned"; } echo $post_categories; get_template_part( "template-parts/content/content", "single" ); if ( is_singular( "attachment" ) ) { // Parent post navigation. the_post_navigation( array( /* translators: %s: parent post link */ "prev_text" => sprintf( __( "<span class="meta-nav">Published in</span><span class="post-title">%s</span>", "twentynineteen" ), "%title" ), ) ); } elseif ( is_singular( "post" ) ) { // Previous/next post navigation. the_post_navigation( array( "next_text" => "<span class="meta-nav" aria-hidden="true">" . __( "Next Post", "twentynineteen" ) . "</span> " . "<span class="screen-reader-text">" . __( "Next post:", "twentynineteen" ) . "</span> <br/>" . "<span class="post-title">%title</span>", "prev_text" => "<span class="meta-nav" aria-hidden="true">" . __( "Previous Post", "twentynineteen" ) . "</span> " . "<span class="screen-reader-text">" . __( "Previous post:", "twentynineteen" ) . "</span> <br/>" . "<span class="post-title">%title</span>", ) ); } // If comments are open or we have at least one comment, load up the comment template. if ( comments_open() || get_comments_number() ) { comments_template(); } endwhile; // End of the loop. ?> </main><!-- #main --> </section><!-- #primary --> <?php get_footer();
댓글
Answer
이 코드를 singl에 입력하기 만하면됩니다. php
foreach((get_the_category()) as $category) { echo $category->cat_name . " "; }
댓글
- 답변 해 주셔서 감사하지만 할당되지 않음 만 표시됩니다.
- 카테고리를 할당 했나요?
- 예, 카테고리가 있고 이미 할당했습니다.
- while 루프 안에 코드를 넣었나요?
- 예, inslide를 추가했습니다. (have_posts ()) : 내 코드를 확인하세요. 질문을 업데이트했습니다.
get_the_category()
는category
분류에서 용어를 가져옵니다. 연결 한 플러그인은 맞춤 게시물 유형을 생성하므로 ' ' 블로그 카테고리 '에 대한 별도의 분류도 생성하지 않습니까? 게시물에get_the_terms()
,get_the_category()
가 아닙니다.get_the_terms()
를 사용하는 경우 분류 이름을 제공해야합니다. 내가 제공하지 않는 ' 모릅니다. 해당 카테고리에 대한 편집 화면의 URL을 확인하십시오. 분류 이름을 포함해야합니다.