Home Blog wp_tip 테마 푸터를 페이지빌더로 만들어서 표시하기

테마 푸터를 페이지빌더로 만들어서 표시하기

테마를 이용하다 보면 헤더와 푸터는 거의 고정된 구조로 표시가 되는 경우가 많습니다.

그런데 어쩔 때에는 디자인대로 푸터를 표시할 때 단순 위젯들의 모음으로는 그걸 표시하기가 어려울 때가 있어서,  고정된 푸터 대신 페이지 빌더를 사용할 수 있는 페이지로 푸터를 만든 다음, 그걸 푸터에서 표시되도록 하는 방법을 사용하곤 합니다.  (※ 푸터 자체를 빌더로 구성하는 방식이 적용돼 있는 테마들도 있습니다.)

먼저 커스텀 쿼리로 특정 아이디의 포스트를 불러서 화면에 표시하는 쇼트코드를 하나 만들어 둡니다.

add_shortcode("linked_content", "custom_query_shortcode");
function custom_query_shortcode($atts) {

    // EXAMPLE USAGE:
    // [linked_content the_query="page_id=1111&post_type=page"]    

    // Defaults
    extract(shortcode_atts(array(
        "the_query" => ''
    ), $atts));

    $content_block_query = new WP_Query( $the_query );
    if ( $content_block_query->have_posts() ) {
        while ( $content_block_query->have_posts() ) { $content_block_query->the_post();
            the_content();   
        }
    }
    // Restore original Post Data    
    wp_reset_postdata();  

}

테마의 functions.php에 위 코드를 적고, footer.php 파일(! 자식 테마로 부모테마의 템플릿을 복사해서 수정!)의 내부 구조를 쇼트코드로 대체합니다.

echo do_shortcode('[linked_content the_query="page_id=1111&post_type=page"]');

위 내용은 1111번 아이디의 페이지를 불러다 이곳에 표시를 해라입니다.

 

빌더를 이용해서 푸터를 구성하면 표시에 좀 더 자유도가 생깁니다.

 

끝.

2 댓글. Leave new

  • 안녕하세요.
    글 잘 보았습니다.

    제가 뉴스페이퍼 테마를 유료로 사용하고 있는데
    우커머스 페이지가 수정이 안되더라고요.

    그래서 제가 설정한 푸터가 아닌 기본푸터가 나오는데
    그걸 이걸로 바꿀 수 있을까요?

    응답
    • 푸터는 대개 테마 파일 중 footer.php를 이용해서 수정할 수 있습니다.
      위 내용은 페이지 빌더를 이용해서 페이지를 하나 만들고, 그걸 푸터에 표시되도록 하는 쇼트코드를 이용하는 것으로, 어느 테마에나 다 적용이 될 것으로 보여지네요.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Fill out this field
Fill out this field
유효한 이메일 주소를 입력해주세요.
You need to agree with the terms to proceed

다음
Impreza Theme으로 브런치 사이트를 따라 만들기
이전
원픽 테마는 Impreza