페이지가 게시물 페이지인지 확인


18

읽기 설정 페이지에서 당신은 "프론트 페이지"와 "게시물 페이지"를 설정할 수 있습니다. 현재 페이지인지 확인할 수 있습니다is_front_page();

"게시물 페이지"와 비슷한 기능이 있습니까? is_page();이 특별 페이지에서는 작동하지 않는 것으로 나타났습니다 .

감사

답변:


34

is_home() 다소 혼란스러운 기능 이름에도 불구하고 "게시물 페이지"를 확인합니다.


고마워, 나는 그들 모두를 확인 생각,하지만 난하지 않을 것 같아요 ...
mike

3
무엇에 대해 $wp_query->is_posts_page?
Weston Ruter

@WestonRuter는 질문에 대한 정답을 가지고 있습니다.
J

6

워드 프레스는 7 가지 기본 템플릿 페이지 유형으로 제공되며,이 방법으로 결정

if ( is_main_query() ) {
    // Error
    if ( is_404() ) {
        ;
    }
    // Front page
    if ( is_front_page() ) {
        ;
    }
    // Archive
    if ( is_archive() ) {
        ;
    }
    // Comments popup
    if ( is_comments_popup() ) {
        ;
    }
    // Search
    if ( is_search() ) {
        ;
    }
    // Singular
    if ( is_singular() ) {
        ;
    }
    // Home - the blog page
    if ( is_home() ) {
        ;
    }
}

is_home은 블로그 페이지가 있다고 알려줍니다.


1

"게시물 페이지"는 일반적으로 다음의 아카이브입니다.

  • 카테고리의 게시물
  • 태그의 게시물
  • 날짜 게시물 (년, 월 ...)
  • 메인 아카이브의 게시물

이들 각각은 is_category() is_tag() is_date() is_archive() And so many more 와 같은 많은 조건부 태그 중 하나를 통해 확인할 수 있습니다 . 더 나은 이해를 얻으려면 코덱 http://codex.wordpress.org/Conditional_Tags로하십시오.


0

먼저 저자, 태그, 게시물 유형과 같은 블로그 관련 항목을 확인하십시오.

function is_blog () {
        global  $post;
        $posttype = get_post_type($post );
        return ( ((is_archive()) || (is_author()) || (is_category()) || (is_home()) || (is_single()) || (is_tag())) && ( $posttype == 'post')  ) ? true : false ;
  }

이제 확인하고 싶은 것을 반환하십시오.

function check_post_type(){
    $postType;
    if (is_blog())
      {
         $postType = 'I am post';
      } else
       {
          $postType = 'I am page';
       };
    return $postType;
  }

보스처럼 사용 <?php echo check_post_type();?>

Wes Bos 덕분에


0

TL; DR

A 경우 . 기본 템플릿 파일 (index.php) 내부의 기본 템플릿이기 때문에이를 결정할 필요가 없습니다 [1] .

케이스 B . 페이지 템플릿 (예 : page.php) 내에서 확인하려면 다음과 같이 확인하십시오.

get_option( 'page_for_posts' ) == get_the_ID()

세부

말 그대로 소스 코드 파고 갔다 [2] 단지 워드 프레스는 값의 검사를 수행하는 방법을 알 수 있도록 그합니다. 게시물 페이지get_option( 'page_for_posts' ) 에서 선택한 값의 게시물 ID를 알기 위해 명령문 을 사용하고 있습니다.

예,이 목적으로와 유사한 공식 검사기 기능은 없습니다 is_front_page().

선택한 페이지의 ID를 아는 한 확인 프로세스에 사용할 수 있습니다.

참고 문헌

  1. 워드 프레스 코덱스, 테마 개발, codex.wordpress.org/Theme_Development

  2. 설정의 소스 코드 › 읽기 설정 , github.com/WordPress/.../wp-admin/options-reading.php

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.