답변:
' 블로그 페이지 ' 가 읽기 설정 에서 게시물 페이지 로 설정된 정적 페이지 를 의미 한 경우 다음을 수행하여 확인할 수 있습니다.
if ( is_front_page() && is_home() ) {
// Default homepage
} elseif ( is_front_page() ) {
// static homepage
} elseif ( is_home() ) {
// blog page
} else {
//everyting else
}
당신이 사용하는 경우
is_home()
와is_front_page()
, 당신은 그들을 이용해야 올바른 순서 버그를 방지하기 위해 모든 사용자 구성을 테스트 할 수 있습니다.
(출처 : 조건부 태그-블로그 페이지 )
또는 간단히 :
if ( !is_front_page() && is_home() ) {
// blog page
}
또는 더 간단하게 (내 생각에) :
if ( is_home() ) {
// blog page
}
테마 functions.php 파일에서 다음을 사용할 수 있습니다.
function is_blog () {
return ( is_archive() || is_author() || is_category() || is_home() || is_single() || is_tag()) && 'post' == get_post_type();
}
그런 다음 확인하려는 파일에 이것을 넣으십시오.
<?php if (is_blog()) { echo 'You are on a blog page'; } ?>
functions.php 파일에서 Hooks를 사용하여 위를 연결하여 모든 페이지에 표시되도록 할 수 있습니다.
'블로그 페이지'에 의해 읽기에서 정적 페이지를 게시물 페이지로 설정 한 경우 :
global $wp_query;
if ( isset( $wp_query ) && (bool) $wp_query->is_posts_page ) {
//static blog page
}
추신. 이 솔루션은 template_redirect 작업 에서도 작동 합니다.
global $wp_query
) 뒤에 세미콜론이 누락되어 있지만 질문에 완전히 대답하지 않았기 때문에 약간 투표되었습니다 . 그것은 기능이지만 OP는 헤더 파일에서이를 해결하는 방법을 물었습니다. 따라서 어디에 배치 해야하는지에 대한 약간의 설명이 필요할 수 있습니다. 다시 한번 환영합니다.
얻으려면 블로그 색인 페이지를 , 나는 것을 발견
if ( !is_front_page() && is_home() ) {
// blog page
}
나를 위해 일하지 않고, get_option ( 'page_for_posts') 함수를 사용하여 블로그 페이지 post_id를 식별해야했습니다.
if ( !is_front_page() && is_home() ){
if ( empty ( $post_id) ) {
global $post;
$post_id = get_option( 'page_for_posts' );
}
//blog page
}
까다로운 방법이 있습니다.
블로그 페이지 슬러그가 blog
인 경우이 코드를 사용할 수 있다고 가정하십시오 .
global $wp_query;
if($wp_query->query['pagename']=='blog'){
// this is blog page
}
당신이 사용할 수있는..
<?php if ( is_single() ) { ?>
Do stuff here
<?php } ?>
단일 블로그 게시물인지 확인하십시오. 또는...
<?php if ( is_home() ) { ?>
Do stuff here
<?php } ?>
블로그 홈페이지인지 확인
if ( !is_front_page() && is_home() )
적어도 내 의견으로는, 하나의 유스 케이스 는 기본 홈페이지 와 블로그 페이지에 다른 레이아웃 스타일을 가진 테마를 배포하는 경우 입니다.