특정 기능을 메인 화면, 포스트 화면(single), 페이지(page)에 따라 다르게 처리하기

워드프레스를 하다보면 어느 페이지를 가건 상단의 네비나 오른쪽의 위젯이나 하단의 푸터나 다 똑같아 보여서 특정 서비스를 하는 페이지에서 그에 따른 기능을 다르게 보여주고 싶을 때가 있다.

특히 메인인 첫 페이지에서는 더욱이 조금더 메인의 특성을 갖춘 컨텐츠를 보여주고 나열해주고 싶기도 하다.

이 것을 인지하고 구분하여 지정된 행동하는 것은 조금 뒤에 하고 일단 각 화면을 구성하는 것들을 간단히 설명한다.


워드프레스 사용자 화면은 테마 폴더single.phppage.php, index.php, post-entry.php 이 네개로 대부분 이루어져 있다.

index.php는 말 그대로 첫 화면이다.
     ex) http://werty.co.kr/blog/

single.php는 지금 보고 있는 이 화면, 즉 포스팅하면 컨텐츠가 보여지는 화면이다.
     ex)  http://werty.co.kr/blog/1964

page.php는 워드프레스의 페이지를 구성하는 화면이다.
     ex) http://werty.co.kr/blog/about    

post-entry.php는 카테고리들을 들어가면 포스팅된 글들이나 페이지들을 리스트화 된 화면이다.
     ex) http://werty.co.kr/blog/category/wp  


 

이제 이 성격별로 틀린 위치마다 다르게 스크립트를 작성하거나 기능을 부여해보자.

본인은 footer.phpheader.php에 주로 작성한다. 각자 본인들이 사용하려는 목적에 따라 적절히 사용하면 된다.

<?php if(is_front_page()) { ?>
     <p> 지금 보는 화면이 첫페이지라면 이 글을 노출</p>
<?}else if(is_single()){?>
     <p> 지금 보는 화면이 포스팅 화면이라면 이 글을 노출</p>
<?}else if( is_page()){?>
     <p> 지금 보는 화면이 페이지 화면이라면 이 글을 노출</p>
<?}else if( is_category()){?>
     <p> 지금 보는 화면이 카테고리 리스트 화면이라면 이 글을 노출</p>
<?php } ?>

 위와 같이 php 코드를 넣으면 된다.

나는 저 구분별로 . js를 다르게 로딩하기도 하며 css를 다르게 설정하기도 한다.

Subscribe
Notify of
guest

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.

0 댓글
Inline Feedbacks
View all comments
TOP