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

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

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

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)에 붙여넣으시기 바랍니다.

일부 글에 제휴 링크가 포함될 수 있으며 파트너스 활동으로 일정액의 수수료를 받을 수 있습니다.

2개 댓글

댓글 남기기

* 이메일 정보는 공개되지 않습니다.