Как проверить существование родительской страницы?
Для проверки вывода страницы в WordPress существует условный тег is_page(), но как проверить существование родительской страницы для текущей страницы? Можно создать свой условный тег проверки на наличие у страницы родителя. Для этого вам необходимо добавить в файл functions.php вашей темы следующий код:
//условный тег проверки родительской страницы start function is_subpage() { global $post; if (is_page() && $post->post_parent) { return $post->post_parent; } else { return false; } } //условный тег проверки родительской страницы end |
Использовать этот условный тег в коде нужного шаблона темы можно так:
<?php if (is_subpage()) { echo '<h1>' . get_the_title() . ' (родительская: ' . get_the_title($post->post_parent) . ')</h1>'; } else { echo '<h1>' . get_the_title() . '</h1>'; } ?> |
Если у страницы нет родителя, то будет выведен обычный заголовок, а если он есть, то к заголовку добавится и название родителя (будет выведено "(родительская: заголовок родителя)"). Это самый простейший пример, приведенный только ради того, чтобы показать вам использование этого условного тега.