최근 글 위젯에서 특정 카테고리 글 제거하기[워드프레스]

Last Updated: 2015년 04월 20일 2개 댓글

워드프레스의 최근 글 위젯을 사용하면 모든 카테고리의 글이 최근 순서대로 나열됩니다. 경우에 따라 특정 카테고리의 글이 최근 글 목록에 표시되지 않도록 하고 싶은 경우가 있을 수 있습니다.

이를 위해 인터넷을 통해 여러 가지 방법을 시도해봤는데 잘 되지 않았습니다. (아마 워드프레스가 업그레이드되면서 기존에는 잘 되던 방법이 잘 안되는 경우가 많은 것 같습니다.) 다음 코드는 최근 글 목록에 특정 카테고리의 글만 표시하도록 하는 함수입니다.

add_filter('widget_posts_args','modify_widget');

function modify_widget() {
$r = array( 'cat' => '3' );
return $r;
}

이 함수를 응용하여 특정 카테고리만 제외하는 함수를 작성해보았습니다.

add_filter('widget_posts_args','modify_widget');

function modify_widget() {
$r = array( 'category__not_in' => '3');
return $r;
}

"$r = array( 'category__not_in' => '3');"에서 숫자 '3'은 제외시키고자 하는 카테고리의 아이디(ID)로 대체하시면 됩니다. (카테고리 아이디를 확인하려면 WPsite Show IDs와 같은 플러그인을 사용하면 편리합니다.)

여러 개의 카테고리를 지정하려면 "$r = array( 'category__not_in' => '3');" 대신에 다음과 같이 array를 사용합니다:

$r = array( 'category__not_in' => array(3, 4));

 

위의 함수를 사용하고 있는 워드프레스 테마의 함수 파일(functions.php)에 붙여넣으시기 바랍니다.

작성자 아바타

워드크래커는 전문 영한번역가로 활동하고 있으며 10년 이상 워드프레스 관련 정보를 제공하는 워드프레스 정보꾸러미 블로그를 운영하고 있다. 또한, ‘워드프레스를 사용하는 사람들’ 네이버 카페도 관리하고 있다.

2 개 댓글

Leave a Comment

카카오톡 상담 카톡 서비스 상담