Каковы различные способы обнаружения домашней страницы в WordPress? - PullRequest
7 голосов
/ 07 февраля 2011

Какие существуют способы обнаружения домашней страницы WordPress

, кроме is_front_page() и is_home()

Спасибо

Ответы [ 6 ]

20 голосов
/ 07 февраля 2011

is_front_page() - это то, что вы хотите.

Я предполагаю, из-за того, что is_home() не работает, что ваша домашняя страница статична, согласно настройкам в wp-admin.

is_home() возвращает значение true на главной странице вашего блога, тогда как is_front_page() возвращает значение true, когда страница определяется как ваша главная страница, фид или нет.

Из кодекса:

Этот условный тег проверяет, является ли главная страница постами или страницей.Это логическая функция, означающая, что она возвращает ИСТИНА или ЛОЖЬ.Он возвращает значение ИСТИНА, когда отображается главная страница блога, а для параметров Настройки-> Чтение-> Передняя страница установлено значение «Ваши последние сообщения», или когда для «Статической страницы» задано значение «Главная страница».текущая страница отображается.

16 голосов
/ 07 февраля 2011

Я просто делаю следующее:

if ( $_SERVER["REQUEST_URI"] == '/' ) { }

Это работает и не слишком усложняет вещи, тем более что is_front_page() и is_home() не всегда работают так, как вы ожидаете.

2 голосов
/ 10 февраля 2014

В Twenty Ten я использую:

<?php
 if ( $_SERVER["REQUEST_URI"] == '/' ) { ?>
   <h1 class="site-title"><?php bloginfo( 'name' ); ?></h1>
   <h2 class="site-description"><?php bloginfo( 'description' ); ?></h2>
<?php
} else { ?>
   <p class="site-title"><?php bloginfo( 'name' ); ?></p>
   <p class="site-description"><?php bloginfo( 'description' ); ?></p>
<?php } ?>

Работает как шарм ... Я всегда использую $ _SERVER и всегда работает.

1 голос
/ 19 сентября 2017

снаружи петли:

if(get_option("page_on_front") == $post->ID){
    //do front page stuff here
}
0 голосов
/ 18 июня 2013

Во многих ситуациях сайт Wordpress может иметь значения is_home и is_frontpage, равные true на домашней странице REAL, а также на главной странице блога.После создания сайтов в Wordpress в течение примерно 4 лет это все еще беспокоит меня.

Например, если у вас есть сайт, на котором у вас есть последние сообщения на вашей домашней странице, возможно, с ползунком или некоторыми другими элементами, ориентированными на домашнюю страницу, И есть еще одна страница блога, тогда is_frontpage и is_home будут равно true наОбе страницы.Так что Wordpress не имеет четкой условной функции для настоящей домашней страницы, по крайней мере, так, как большинство людей думают о домашней странице веб-сайта.

Поэтому я согласен с Лиамом, что если вы попадете в непонятную ситуацию, что-то вродеif ($ _SERVER ["REQUEST_URI"] == '/') {}

более надежно.

0 голосов
/ 07 февраля 2011

is_home() это путь.

Вы пробовали этот метод, и он не работает? Если да, то обычно это связано с настройками mod_rewrite или с самими настройками wordpress.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...