프로그래밍

[워드프레스] 커스텀 포스트 타입을 검색 결과에 표시하지 않는 방법

📈 0

저는 워드프레스로 웹사이트를 만들면서 필요에 따라 사용자 정의 포스트 타입(커스텀 포스트 타입, 이하 CPT)을 다양하게 활용하는 편입니다.

문제발생

어떤 CPT의 경우 간단한 포스트를 등록해 다른 포스트 안에서 숏코드로 불러와 보여주는 것 들도 있는데, 그 와중에 워드프레스 검색 기능에서 해당 CPT의 아이템들이 노출되는 상황이 발생했더라구요.

그래서 이를 방지하기 위한 방법을 찾아보았습니다.

해결

다행히도 해결 방법은 간단했습니다. 워드프레스에서 CPT 를 만들 때 register_post_type 함수를 이용하는데, 여기에 설정만 넣어주면 되는 해결됩니다.

function register_my_cpt() {
  register_post_type(
    'mycpt',
    array(
      .. ,
      'exclude_from_search' => true, // 검색결과에서 해당 CPT 제외하기
      .. ,
    )
  );
}
add_action('init', 'register_my_cpt');

보통 CPT 만들 때 위와 같은 형식으로 만들텐데, 여러가지 설정 항목 중 exclude_from_search 항목을 true 로 설정하면 간단하게 해결됩니다.

더욱 자세한 내용은 아래 링크를 참고하세요.

참고자료