если тег body имеет класс 'home' через дочернюю тему - PullRequest
0 голосов
/ 05 марта 2019

Я пытаюсь просто показать контент с php if statement.

Я хотел бы добавить элемент нижнего колонтитула ( в footer.php ) только для домашней страницы.

Итак, тег if body имеет класс 'home';затем добавьте новый элемент нижнего колонтитула.Я пытаюсь ниже;но в настоящее время ничего не отображается.

$classes = get_body_class();
if (in_array('home',$classes)) {
    function lastUpdated() { 
        echo '<div class="last-updated">Last Updated:<span class="date-update"></span></div>'; 
    }
} 

приведенный выше код находится в файле functions.php моей дочерней темы;

1 Ответ

0 голосов
/ 05 марта 2019

Прежде всего, как WP узнает, где вы хотите вывести эту разметку? Чтобы решить этот вопрос, вы можете использовать ловушки, вам необходимо отслеживать родительскую тему для такого кода do_action('before_theme_footer'), чтобы найти место, где вы можете «внедрить» свой код. И затем вы можете применить свой вывод к этому хуку, и внутри функции обратного вызова проверьте, если вы находитесь на домашней странице с is_front_page():

function footer_markup(){
  if( is_front_page() ) {
    echo '<div></div>';
  }
}
add_action('before_theme_footer', 'footer_markup');

Вы можете прочитать о крючках здесь - https://designmodo.com/wordpress-hooks-filters/

Если в footer.php нет никаких хуков, вы можете скопировать footer.php в дочернюю тему и добавить свой код в нужное место, где вы хотите его вывести:

if( is_front_page() ) {
  echo '<div></div>';
}
...