워드프레스의 붙박이 글(Sticky Posts)는 원래 갯수 제한이 없습니다. 하지만, 이 갯수를 제한함으로써 쿼리 루프 블록 등을 이용해 뉴스 사이트나 블로그의 홈이나 카테고리 메인 등의 레이아웃에 활용할 수 있습니다.
PHP 코드 스니펫
워드프레스에서는 붙박이 글을 지정 할 때 stick_post()
함수를 사용하며 이 함수에서 붙박이 글을 지정한 뒤 post_stuck
이라는 훅을 제공합니다. 이를 활용해 부탁이 글의 객수를 제한할 수 있습니다. 아래는 부탁이 글을 3개로 제한한 예제입니다.
// post_stuck 액션은 '붙박이 글' 데이터에 변화가 있을 때만 작동
add_action( 'post_stuck', function($post_id) {
$limit = 3;// 정해진 붙박이 글 개수, 숫자만 입력
$post_id = (int) $post_id;
$stickies = get_option( 'sticky_posts' );
// 정해진 개수보다 많을 때만 작동
if ( count($stickies) > $limit ) {
// stick_post 함수에서 이미 array / intval 검증이 완료됨
$offset = $limit * -1;
$stickies = array_slice( $stickies, $offset );
update_option( 'sticky_posts', array_values( $stickies ) );
}
} );
Code language: PHP (php)
Leave a Comment