[워드프레스] 위젯 메인페이지만 나오게 하는 방법


워드프레스에서 Header Widget 또는 Footer Widget 을 달면 모든 페이지 마다 위젯이 나옵니다.

특정 위젯을 자바스크립트로 메인 홈페이지에만 나오게 하고 나머지 하위 메뉴에서는 숨기는 방법입니다.


먼저 위젯을 달고 소스보기로 해당 위젯 영역의 태그를 살펴봅니다.

<!-- Upper widgets -->
<div class="header-widgets-wrapper">
<div class="header-widgets-three header-widgets-left">
<section id="custom_html-5" class="widget_text header-widget widget swidgets-wrap widget_custom_html"><div class="swidget"><div class="sidebar-title-border"><h3 class="widget-title">인터넷속도측정</h3></div></div><div class="textwidget custom-html-widget"><style>
#sc-container { margin: 0 auto; }
</style>

section id="custom_html-5" 로 해당 위젯을 숨겨 보도록 하겠습니다.


<script>

if(window.location.pathname !== '/') {

document.getElementById('custom_html-5').parentNode.parentNode.style.display='none';

}

</script>

메인 홈이 아닐때를 조건으로 custom_html-5 를 찾아서 상위노드를 숨기는 방법입니다.

위에는 parentNode.parentNode 가 두번이나 있기 때문에 Header Widget 자체를 숨기는 코드입니다.

해당 위젯만 숨기려면 parentNode 하나만 넣어주면 됩니다.


블로그 이미지

iVPS 영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

댓글을 달아 주세요