워드프레스 블로그를 운영하다 보면 일반적으로 메인화면에 가장 최근에 발행된 포스팅이 뜹니다.
가끔은 별로 중요하지 않은 글들이나, 개인적인 기록을 목적으로 쓰는 글들이 있는데요. 이게 메인페이지 최신글로 등록되다 보니 메인 페이지에 보이지 않았으면 하는 바램이 있었습니다.
하지만 코드를 잘 몰라서 수정하는게 힘들었는데, 드디어 워드프레스에서 특정 카테고리를 메인 페이지에서 숨기는 방법을 적용했습니다! 저처럼 헤매시는 분들을 위해 기록을 남겨 보겠습니다.
워드프레스에서 특정 카테고리 홈 화면에서 숨기기
일단 현재 사용중인 테마의 function.php 파일을 수정해줘야 합니다. FileZilla 라는 FTP접속 프로그램을 이용해서 자신의 워드프레스의 폴더에 접속해줍니다.
사용 중인 테마의 functions.php 수정
/wp-content/themes/사용 중인 테마 폴더/functions.php
저는 neve-child 라는 테마를 사용 중이기 때문에 해당 폴더에서 functions.php 파일을 찾을 수 있었습니다. 이 파일을 편집해서 새로 업로드 해줄 겁니다. 메모장으로 열어주세요.
functions.php 파일에 코드 추가하기
function exclude_category( $query ) { if ( $query->is_home() && $query->is_main_query() ) { $query->set( 'cat', '-4' ); } } add_action( 'pre_get_posts', 'exclude_category' );
functions.php 파일의 맨 아래 줄에다가 위의 내용을 추가해 주면 되는데, 색칠되어 있는 ‘-4‘ 이부분은 자신이 제외시킬 카테고리 ID를 입력해 줘야 합니다.
저 같은 경우에는 28번 카테고리를 제외시켜 봤습니다. -표시가 붙으면 제외 시킨다라는 뜻이라고 하니, 자신이 제외 시키고 싶은 카테고리 ID를 입력해 주면 됩니다.
카테고리 ID를 확인하는 방법
혹시나 자신의 카테고리 ID를 모를 경우 확인하는 방법이 있습니다. 워드프레스 관리자 페이지에서 [글] → [카테고리]에서 각 카테고리를 클릭해서 들어가면 브라우저 주소창 에서 확인할 수 있습니다.
이로서 해당 카테고리가 워드프레스 메인 페이지에서 제외되는 것을 확인할 수 있습니다. 저같은 경우에도 위의 코드를 추가해서 몇몇 카테고리를 노출이 안되게 해놨습니다.