Відповіді:
is_home()
перевіряє "Сторінку повідомлень", незважаючи на дещо заплутану назву функції.
$wp_query->is_posts_page
?
Wordpress поставляється з 7 основними типами сторінок шаблону, які можна визначити таким чином
if ( is_main_query() ) {
// Error
if ( is_404() ) {
;
}
// Front page
if ( is_front_page() ) {
;
}
// Archive
if ( is_archive() ) {
;
}
// Comments popup
if ( is_comments_popup() ) {
;
}
// Search
if ( is_search() ) {
;
}
// Singular
if ( is_singular() ) {
;
}
// Home - the blog page
if ( is_home() ) {
;
}
}
is_home каже вам, що у вас є сторінка блогу.
"Сторінка публікацій", як правило, є архівом:
Кожен з них може бути перевірений одним із безлічі умовних тегів на кшталт
is_category()
is_tag()
is_date()
is_archive()
І так багато інших. Щоб краще зрозуміти, зверніться до кодексу http://codex.wordpress.org/Conditional_Tags
Спочатку перевірте, що стосуються блогів, такі як автор, тег, тип публікації
function is_blog () {
global $post;
$posttype = get_post_type($post );
return ( ((is_archive()) || (is_author()) || (is_category()) || (is_home()) || (is_single()) || (is_tag())) && ( $posttype == 'post') ) ? true : false ;
}
Тепер перевірте і поверніть те, що ви хочете мати
function check_post_type(){
$postType;
if (is_blog())
{
$postType = 'I am post';
} else
{
$postType = 'I am page';
};
return $postType;
}
Використовуйте його, як Бос
<?php echo check_post_type();?>
Завдяки Wes Bos
Випадок A . Не потрібно визначати його всередині головного файлу шаблону (index.php), оскільки це шаблон за замовчуванням для нього [1] .
Випадок B . Щоб визначити його всередині шаблону сторінки (наприклад: page.php), просто перевірте його так:
get_option( 'page_for_posts' ) == get_the_ID()
Я буквально пішов копати його вихідний код [2] лише для того, щоб зрозуміти, як Wordpress робить перевірку значення. Виявляється, за допомогою оператора get_option( 'page_for_posts' )
можна дізнатися ідентифікатор пошти вибраного значення сторінки "Повідомлення" .
Так, так, для цього не існує такої офіційної функції перевірки, яка була б подібною до is_front_page()
.
Поки ви знаєте ідентифікатор сторінки, яку ви вибрали, ви можете використовувати її для перевірки.
WordPress Codex, Розробка тем, codex.wordpress.org/Theme_Development
Вихідний код Налаштувань › Параметри читання , github.com/WordPress/…/wp-admin/options-reading.php