[WordPress] 워드프레스에서 is_single 과 is_singular 의 차이점을 알아보자
워드프레스를 코어를 기반으로 해서 테마나 플러그인을 만들다 보면 현재 사용자가 보고 있는 페이지가 개별 포스트인지 확인하기 위해 아래 두가지의 함수를 사용합니다. 사용자가 보고 있는 페이지 라는 말을 조금더 자세하게 쓰자면 현재 페이지를 로드하는 쿼리(Query)가 개별 포스트 혹은 페이지인지 확인한다는 것입니다.
- is_single
- is_singular
이 두 함수에 대해 알아봅시다.
is_single
is_single
함수는 현재 사용자가 개별 포스트를 보고 있는지 확인해 개별 포스트일 경우 true
를, 그렇지 않으면 false
를 반환합니다.
Works for any post type, except attachments and pages
그리고 보통은 아래와 같이 사용하죠.
if ( is_single() ) {
/* 개별 포스트에 출력될 내용들 */
}
is_singular
is_singular
함수는 현재 사용자가 어떠한 종류의 개별 포스트 혹은 페이지를 보고 있으면 true
, 그렇지 않으면 false
를 반환합니다.
if ( is_singular() ) {
/* 개별 포스트 혹은 페이지에 출력될 내용들 */
}
실전예제
아래는 각 상황별 is_single
과 is_singular
의 반환 값들입니다.
상황 | is_single | is_singular |
---|---|---|
개별 포스트 | true | true |
개별 사용자정의 포스트 | true | true |
개별 페이지 | false | true |
첨부파일 페이지 | false | true |
포스트 목록 페이지 | false | false |
크게 다르지 않은것 같으면서도 확실히 다른 함수이니 잘 구분해서 사용해야 됩니다.
댓글 남기기