워드프레스 블로그 페이지 정렬 변경: 오래된 글을 먼저 나열하기

Last Updated: 2023년 08월 21일 1개 댓글

워드프레스 읽기 설정에서 홈페이지 표시를 "최신 글"로 설정하면 전면 페이지에 가장 최근 글에서 오래된 글 순서로 나열됩니다. 카테고리 페이지에서도 마찬가지로 일반적으로 최근 글이 맨 위에 표시되고 뒤로 갈 수록 오래된 포스트들이 나열됩니다.

최신 글을 먼저 나열하는 대신 오래된 글을 먼저 표시하고 싶은 경우가 있을 수 있습니다. 이런 경우에 참고해보세요.

워드프레스 블로그 페이지 정렬 변경: 오래된 글을 먼저 나열하기

뉴스페이퍼 테마엘리멘터 프로의 Posts 위젯을 사용하는 경우 포스트 정렬 방법을 지정할 수 있습니다.

Article Thumbnail
뉴스페이퍼 테마 포스트 정렬 순서 옵션
워드프레스 뉴스페이퍼 테마에서 블록(Block)을 배치하여 특정 카테고리 글들을 나열할 때 포스트 정렬 순서(Sort Order)를 지정할 수 있습니다. 또한, 특정 글을 앞쪽에 표시하도록 정렬하고 싶은 경우 정렬 순서를 'Featured'로 설정했습니다.
더 보기

엘리멘터 프로의 포스트 위젯의 경우 Query(쿼리) 섹션에서 Order(순서) 설정을 지정할 수 있습니다.

두 가지 옵션 중에서 선택 가능합니다.

  • ASC: 오름차순, 오래된 글이 먼저 표시되고 최신 글이 뒤쪽이 표시됩니다.
  • DESC: 내림차순, 최신 글이 먼저 표시됩니다.

이러한 기능이 제공되지 않는 테마에서 블로그 페이지나 카테고리 페이지에서 포스트 정렬 순서를 변경하고 싶은 경우 pre_get_posts 액션(훅)을 사용할 수 있습니다.

예를 들어, 설정 » 읽기에서 홈페이지 표시 설정을 "최신 글"로 지정한 경우 다음 코드를 테마의 함수 파일(차일드 테마를 만들어 작업하세요)에 추가하면 전면 페이지(홈 페이지)에 오래된 글에서 최신 글 순서로 글들이 나열됩니다.

// 워드프레스 전면 페이지에 오래된 글에서 최신 글 순으로 포스트 나열하기
add_action('pre_get_posts', 'alter_query');

add_action('pre_get_posts', 'alter_query');

function alter_query($query) {
    if ($query->is_main_query() && is_home()) {
        $query->set('orderby', 'date');    // Order by the date field
        $query->set('order', 'ASC');       // Order in ascending order (from oldest to newest)
    }
}

카테고리 페이지의 글 나열 순서를 오래된 글에서 최신 글 순으로 변경하고 싶은 경우 다음과 같은 코드를 사용할 수 있습니다.

// 워드프레스 카테고리 페이지에서 글 나열 순서를 오래된 글에서 새로운 글 순으로 변경하기
add_action('pre_get_posts', 'sort_category_posts_oldest_first');

function sort_category_posts_oldest_first($query) {
    // Check if it's the main query and if it's a category archive
    if ($query->is_main_query() && is_category()) {
        $query->set('orderby', 'date');    // Order by the date field
        $query->set('order', 'ASC');       // Order in ascending order (from oldest to newest)
    }
}

위의 코드를 적용하면 오래된 글에서 최신 글 순으로 글들이 나열됩니다. 일반적으로 최신 정보가 먼저 나오는 것이 SEO에 유리합니다. 오래된 글들이 먼저 표시되어야 하는 경우(예: 매뉴얼 페이지) 상기 코드를 응용할 수 있습니다.

워드프레스 블로그 페이지 정렬 변경: 오래된 글을 먼저 나열하기 예시

위의 코드로 테스트해보니 잘 작동하네요. 정렬 방식을 바꾸고 싶은 경우 상기 코드를 적절히 응용하시기 바랍니다.

참고


1 개 댓글

Leave a Comment