[WordPress] 현재 카테고리 아카이브의 카테고리 ID 를 알아내는 방법
- 현재 카테고리 아카이브의 카테고리 ID 는 쿼리에서 가져올 수 있음
- 쿼리에서 카테고리 ID 를 가져오기 위해서는
get_query_var
함수를 사용 하면 됨 - ex)
$cat_id = get_query_var('cat')
카테고리 템플릿 페이지(category.php
)는 보통 현재 사용자에게 현재 카테고리에 대한 정보와 함께, 해당 카테고리의 포스트 목록을 보여주게 됩니다.
이 상황에서 현재 카테고리에 대한 정보(카테고리 이름, 설명, 주소 등등)를 불러와 표현하기 위해서는 해당 카테고리의 ID 를 알아야 정보를 불러오든지 할 수 있습니다.
get_query_var
카테고리 아카이브 페이지는 워드프레스에서 쿼리를 통해 조회가 됩니다. 이게 무슨 말이냐 하면 카테고리 페이지의 경우 원래의 주소가 아래처럼 표시 된다는 것입니다.
https://triki.net/triki/?cat=11
대충 이런식이죠. 하지만 실제로 사용자에게는 보통 저렇게 보이지 않습니다. 카테고리의 퍼머링크(Permalink, 고유주소) 때문이죠.
아무튼 쿼리에서는 cat
라는 파라미터에 카테고리의 ID 가 들어가니 이 쿼리에서 카테고리 ID 를 추출 할 수 있고, 그 역할을 하는 함수가 바로 get_query_var
함수라는 것입니다.
get_query_var: 기본 사용법
어떤 역할을 하는지만 알면 굉장히 간단한 함수입니다. WordPress Codex – get query var 에서 확인 할 수 있는 기본적인 사용법은 아래와 같습니다.
<?php get_query_var( $var, $default ) ?>
$var
,$default
두 개의 파라미터가 사용됨$var
- (필수) 쿼리에 포함된 값 중 어떤 파라미터의 값을 가져올지
- ex) cat, paged, …
$default
- (선택) 해당 파라미터가 쿼리에 없을 때
return
할 기본 값
- (선택) 해당 파라미터가 쿼리에 없을 때
뭔가 복잡해 보이지만, 전혀 그렇지 않아요.
get_query_var(‘cat’)
get_query_var
함수의 기본 사용법을 알면 get_query_var('cat')
가 어떤 의미를 가지는지 알 수 있습니다. 바로 워드프레스가 사용자에게 표시할 쿼리문에서 cat(카테고리)의 값을 가져오는 것이죠.
그래서 결론적으로 아래와 같이 사용 할 수 있습니다.
$cat_id = get_query_var('cat')
이제 $cat_id
라는 변수에 현재 카테고리의 ID 가 담기게 되고, 이 ID 를 가지고 카테고리의 이름, 설명 등을 불러와 사용자에게 표시하는 작업의 초석이 완성 된 것입니다.
말로 쓰니 뭐 복잡해 보이는데.. 전혀 그렇지 않아요.
댓글 남기기