헤더와 푸터를 커스터마이징하는 10가지 방법 소개
워드프레스는 웹사이트의 핵심 구조를 쉽게 관리할 수 있는 플랫폼이지만, 웹사이트를 더욱 개성 있게 만들기 위해서는 헤더와 푸터의 커스터마이징이 필수입니다. 헤더는 웹사이트를 방문한 사용자들에게 첫인상을 제공하고, 푸터는 중요한 정보나 링크를 배치하는 곳으로 사용됩니다. 워드프레스의 유연한 구조를 이용하여 헤더와 푸터를 커스터마이징하는 방법을 알아보겠습니다. 이 글에서는 워드프레스 사용자들이 실용적으로 적용할 수 있는 10가지 방법을 소개합니다.
1. 테마의 사용자 정의 메뉴를 활용한 간편 커스터마이징
워드프레스는 기본적으로 대시보드의 ‘외모 > 사용자 정의’ 메뉴에서 헤더와 푸터의 요소를 간단히 수정할 수 있는 기능을 제공합니다. 이 메뉴에서 사이트 제목, 로고, 메뉴 항목 등을 수정할 수 있으며, CSS를 추가해 스타일 변경도 가능합니다. 코드에 익숙하지 않은 사용자도 이 기능을 이용하면 헤더와 푸터를 커스터마이징할 수 있습니다.
2. 자녀 테마(Child Theme)를 이용한 헤더와 푸터의 안전한 수정
테마를 업데이트할 때 변경한 코드가 사라지지 않도록 하기 위해서 자녀 테마를 사용할 것을 권장합니다. 자녀 테마를 사용하면 부모 테마의 기능을 유지하면서도 header.php
와 footer.php
파일을 수정하여 변경할 내용을 적용할 수 있습니다. 이를 통해 테마를 업데이트하더라도 안전하게 커스터마이징한 내용이 유지됩니다.
<?php
// 자녀 테마의 header.php 파일
?>
<header>
<div class="custom-logo">
<?php the_custom_logo(); ?>
</div>
<nav class="main-navigation">
<?php wp_nav_menu(array('theme_location' => 'primary')); ?>
</nav>
</header>
PHP자녀 테마를 설치하는 방법은 다음 링크를 통해 확인 할 수 있습니다.
3. 커스텀 로고 및 파비콘(Favicon) 추가
헤더의 중요한 요소 중 하나는 로고입니다. 워드프레스는 사용자 정의 메뉴에서 쉽게 로고를 업로드할 수 있도록 도와줍니다. 또한, functions.php
파일을 통해 커스텀 로고 기능을 추가할 수도 있습니다. 파비콘은 사이트의 정체성을 표현하는 요소 중 하나로, 사용자 정의 메뉴에서 간단하게 업로드할 수 있습니다.
// functions.php에서 커스텀 로고 추가하기
add_theme_support('custom-logo');
PHP
4. 고유한 메뉴 스타일의 적용
워드프레스의 내비게이션 메뉴는 테마의 기본 스타일을 사용하지만, 이를 커스터마이징하면 독특한 디자인을 구현할 수 있습니다. wp_nav_menu()
함수를 사용해 CSS 클래스를 추가하고, 이를 이용해 스타일을 조정할 수 있습니다. 예를 들어, 헤더 메뉴에 원하는 색상과 폰트를 적용하거나, 푸터 메뉴에만 특정한 레이아웃을 설정하는 것이 가능합니다.
// wp_nav_menu 함수에 클래스 추가 예시
wp_nav_menu(array('theme_location' => 'footer-menu', 'menu_class' => 'footer-navigation'));
PHP/* CSS에서 메뉴 스타일링 */
.footer-navigation {
background-color: #333;
color: white;
padding: 20px;
}
.footer-navigation a {
color: #fff;
text-decoration: none;
}
PHP5. 헤더의 고정(Navigation Bar Sticky)
사용자가 스크롤 할 때 헤더를 화면 상단에 고정시키기 위해 JavaScript나 CSS를 사용할 수 있습니다. 고정 내비게이션 바는 사용자 경험을 개선하고 중요한 메뉴 항목에 항상 접근 할 수 있게 만들 수 있습니다.
/* 고정 헤더를 위한 CSS */
.sticky-header {
position: fixed;
top: 0;
width: 100%;
z-index: 1000;
}
PHP// JavaScript로 헤더를 고정
window.onscroll = function() {stickyHeader()};
var header = document.getElementById("header");
var sticky = header.offsetTop;
function stickyHeader() {
if (window.pageYOffset > sticky) {
header.classList.add("sticky-header");
} else {
header.classList.remove("sticky-header");
}
}
PHP6. 푸터에 소셜 미디어 아이콘 추가
푸터에 소셜 미디어 아이콘을 추가하면 사용자들이 웹사이트의 SNS 계정에 쉽게 접근할 수 있습니다. 코드를 수정하여 아이콘을 직접 추가하거나 플러그인을 사용할 수 있으며, 간단한 CSS와 HTML을 이용하면 원하는 스타일로 꾸밀 수 있습니다.
<!-- HTML SNS 아이콘 예시 -->
<div class="footer-social-icons">
<a href="https://facebook.com" target="_blank"><i class="fab fa-facebook"></i></a>
<a href="https://twitter.com" target="_blank"><i class="fab fa-twitter"></i></a>
</div>
PHP/* SNS 아이콘 스타일 */
.footer-social-icons a {
margin: 0 10px;
color: white;
font-size: 24px;
}
PHP7. 푸터에 동적인 콘텐츠 추가하기
푸터는 중요한 정보를 배치하는 곳일 뿐만 아니라, 동적인 콘텐츠를 추가할 수 있는 공간이기도 합니다. 예를 들어, 최신 게시물 목록, 뉴스레터 구독 양식 또는 최근 트윗을 푸터에 표시하여 사용자와의 소통을 강화할 수 있습니다. 이러한 동적인 콘텐츠는 PHP의 위젯을 통해 쉽게 추가할 수 있습니다.
// functions.php에 위젯 등록 예시
function custom_footer_widgets() {
register_sidebar(array(
'name' => '푸터 위젯 영역',
'id' => 'footer-widget',
'before_widget' => '<div class="footer-widget">',
'after_widget' => '</div>',
'before_title' => '<h4>',
'after_title' => '</h4>',
));
}
add_action('widgets_init', 'custom_footer_widgets');
PHP8. 커스텀 스크립트와 스타일 추가
워드프레스의 wp_enqueue_script()
및 wp_enqueue_style()
함수를 사용하면 헤더와 푸터에 임의의 JavaScript 및 CSS 파일을 쉽게 추가할 수 있습니다. 예를 들어, 헤더에 스크롤 효과를 추가하거나, 푸터에 광고 배너를 로드하는 스크립트를 추가할 수 있습니다.
function custom_theme_scripts() {
wp_enqueue_style('custom-style', get_template_directory_uri() . '/css/custom-style.css');
wp_enqueue_script('custom-js', get_template_directory_uri() . '/js/custom.js', array(), null, true);
}
add_action('wp_enqueue_scripts', 'custom_theme_scripts');
PHP9. 푸터를 이용한 크레딧 및 저작권 문구 변경
대부분 사이트의 푸터에는 제작자나 저작권 관련 문구가 포함됩니다. 기본 테마에서는 이러한 문구를 변경하기 어렵지만, 자식 테마에서 footer.php
파일을 추가하거나 수정하면 PHP 함수를 사용하여 원하는 문구로 대체할 수 있습니다.
// footer.php에서 저작권 문구 변경
add_filter( 'generate_copyright','tu_custom_copyright' );
function tu_custom_copyright() {
?>
©<?php echo date("Y");?> <a href="<?php echo esc_url(home_url('/'));?>"><?php echo bloginfo('name'); ?></a> All rights reserved.
<?php
}
PHP10. 헤더와 푸터의 반응형 디자인 구현
모바일 기기에서 웹사이트를 제대로 구현하기 위해 헤더와 푸터에 반응형 디자인을 적용하는 것이 중요합니다. CSS 미디어 쿼리를 사용하여 화면 크기에 따라 헤더와 푸터의 레이아웃이 자동으로 변경되도록 설정할 수 있습니다. 이 과정에서 메뉴의 스타일을 조정하거나 푸터에 포함된 요소를 모바일 환경에 맞게 재배치할 수 있습니다.
@media (max-width: 778px) {
.footer-navigation {
flex-direction: column;
align-items: center;
}
.footer-social-icons a {
font-size: 18px;
}
}
CSS11. 끝으로
워드프레스의 헤더와 푸터는 사용자가 웹사이트와 상호작용하는 처음과 마무리입니다. 이 요소들을 커스터마이징하면 웹사이트의 전반적인 사용자 경험과 디자인을 크게 개선할 수 있습니다. 위에서 설명한 방법을 통해 사이트의 개성을 살리고, 방문자에게 보다 나은 경험을 제공할 수 있습니다.