테마를 이용하다 보면 헤더와 푸터는 거의 고정된 구조로 표시가 되는 경우가 많습니다.
그런데 어쩔 때에는 디자인대로 푸터를 표시할 때 단순 위젯들의 모음으로는 그걸 표시하기가 어려울 때가 있어서, 고정된 푸터 대신 페이지 빌더를 사용할 수 있는 페이지로 푸터를 만든 다음, 그걸 푸터에서 표시되도록 하는 방법을 사용하곤 합니다. (※ 푸터 자체를 빌더로 구성하는 방식이 적용돼 있는 테마들도 있습니다.)
먼저 커스텀 쿼리로 특정 아이디의 포스트를 불러서 화면에 표시하는 쇼트코드를 하나 만들어 둡니다.
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를 이용해서 수정할 수 있습니다.
위 내용은 페이지 빌더를 이용해서 페이지를 하나 만들고, 그걸 푸터에 표시되도록 하는 쇼트코드를 이용하는 것으로, 어느 테마에나 다 적용이 될 것으로 보여지네요.