[워드프레스] 위젯 메인페이지만 나오게 하는 방법
워드프레스에서 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 하나만 넣어주면 됩니다.
반응형
'워드프레스' 카테고리의 다른 글
[워드프레스] .htaccess 파일 초기화 현상 (0) | 2019.11.19 |
---|---|
[워드프레스] 포스트 썸네일 이미지 DB MySQL 값 추출 (0) | 2019.10.28 |
[워드프레스] All in One SEO 플러그인 (0) | 2018.12.21 |
[워드프레스] wp-admin 차단하기 (0) | 2018.12.12 |
[워드프레스] CyberSyn RSS/Atom Syndicator (0) | 2018.12.12 |