GeneratePress 테마: 카테고리 페이지에 고정 글 상단에 고정하는 방법

Last Updated: 2024년 11월 26일 댓글

워드프레스에서 특정 글을 블로그 페이지 상단에 고정하고 싶은 경우 붙박이 글(고정 글)로 지정할 수 있습니다. 그러면 최신 글 페이지 상단에 고정 글이 고정되어 표시됩니다. 하지만 고정 글로 설정해도 카테고리 페이지에서는 고정이 되지 않습니다. 이 글에서는 GeneratePress 테마에서 고정 글을 카테고리 페이지 상단에 고정하는 방법에 대하여 살펴보겠습니다.

참고로 GeneratePress는 현존하는 테마 중에서 가장 빠른 테마 중 하나로 평가 받고 있습니다. 우리나라에서 대부분의 수익형 블로그에는 이 테마가 사용되고 있습니다. 이 블로그도 현재 제너레이트프레스 테마가 사용되고 있습니다.

GeneratePress 테마: 카테고리 페이지에 붙박이 글(고정 글)을 상단에 고정하는 방법

고정 글 설정하기

워드프레스에서 특정 게시글을 붙박이 글로 설정하고 싶은 경우 글 » 모든 글에서 해당 글 위에 마우스를 올린 다음, 빠른 편집을 클릭합니다.

"이 글을 고정으로 만들기"를 체크하고 업데이트 버튼을 누르면 붙박이 글로 설정됩니다.

그러면 붙박이 글이 최신 글 페이지(블로그 페이지) 상단에 고정됩니다.

여러 개의 글을 붙박이 글로 설정하는 것이 가능합니다. 붙박이 글 항목이 다른 글과 다르게 표시되도록 하고 싶은 경우 CSS를 사용할 수 있습니다. 제 블로그의 경우 다음과 같은 CSS 코드가 사용되었습니다.

/* GeneratePress 테마: 붙박이 글 스타일 */

.sticky .inside-article {
    padding: 30px !important; 
    background-color: #ffffff; 
    border: 1px solid #e0e0e0; 
    box-shadow: 0 10px 20px rgba(0,0,0,0.1); 
    margin-bottom: 50px; 
    transition: transform 0.3s ease-out, box-shadow 0.3s ease-out; 
    border-radius: 8px; 
}


.sticky .inside-article:hover {
    transform: translateY(-5px); 
    box-shadow: 0 15px 30px rgba(0,0,0,0.15); 
}

.sticky p.read-more-container {
    display: none;
}

.sticky .entry-meta {
    display: none;
}


.sticky .inside-article {
    font-family: 'Arial', sans-serif; 
    font-size: 16px; 
    line-height: 1.6; 
    color: #333; 
}

상기 코드를 모양 » 사용자 정의 » 추가 CSS에 추가하시기 바랍니다.

카테고리 페이지에 붙박이 글을 상단에 표시하기

블로그 글을 고정 글로 지정해도 카테고리 페이지에는 상단에 고정되지 않고 최신 글 페이지(블로그 페이지)에만 표시됩니다. 카테고리 페이지에 붙박이 글을 상단에 고정하고 싶은 경우 "워드프레스 GeneratePress 테마: 붙박이 글을 카테고리 페이지에 상단에 고정하기" 글을 참고해 보시기 바랍니다.

참조된 글에서는 PHP 코드로 추가하는 방법에 대하여 설명하고 있습니다. PHP 코드 대신 HTML 코드로 추가하는 것도 가능합니다. 최신 글 페이지의 HTML 소스를 확인하여 붙박이 글 부분의 HTML 코드를 GeneratePress 테마의 훅을 사용하여 카테고리 페이지의 상단에 고정할 수 있습니다.

크롬 브라우저에서 HTML 소스 코드를 확인하고 싶은 경우 Ctrl+U를 누르면 됩니다.

모양 » Elements에서 새 엘리먼트를 생성하여 HTML 코드를 추가하고 generate_before_main_content 훅을 지정하고, 표시할 위치에 해당 카테고리 페이지를 선택할 수 있습니다.

이 방법을 이용하면 해당 카테고리 페이지(하위 페이지 포함) 상단에 고정됩니다. 다른 방법으로 해당 카테고리의 첫 페이지에만 표시하고 싶은 경우 다음과 같은 코드를 차일드 테마의 함수 파일에 추가할 수 있습니다.

add_action( 'generate_before_main_content', function() {
    // 현재 페이지가 카테고리 페이지인지 확인
    if ( is_category( 9529 ) ) { // 카테고리 ID 9529 확인
        // 현재 페이지가 첫 번째 페이지인지 확인
        if ( ! is_paged() ) {
            ?>
            <!-- HTML로 된 콘텐츠 -->
            <?php
        }
    }
}, 10 );

카테고리 ID를 확인하여 해당 카테고리 ID로 대체하고 <!-- HTML로 된 콘텐츠 --> 부분에 붙박이 글 항목의 HTML 코드를 입력하도록 합니다.

사이트 속도에 미치는 영향은 PHP 코드보다는 HTML 코드가 더 적습니다. PHP 코드로 추가할 경우 서버에서 추가적인 작업이 요구되기 때문에 HTML 코드로 추가하면 (미미하지만) 약간의 속도 개선 효과가 있을 것입니다.

참고

작성자 아바타

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

댓글 남기기

Leave a Comment

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