Главная (домашняя) страница

По умолчанию главная страница блога на WordPress - это страница, на которой показаны последние опубликованные записи (или их анонсы). Но страницу записей можно сделать не основной и назвать, например, "Последние записи" или "Блог", и назначить главную страницу с другим, возможно, статическим содержимым. В этой статье:
Создание статической главной страницы
Изменение темы
Программный выбор главной страницы
is_home() и is_front_page()

Создание статической главной страницы

В качестве главной страницы можно использовать одну из постоянных страниц:
На административной панели WordPress создайте, по крайней мере, две страницы (Страницы>Добавить новую).

1. Главная страница

Задайте для одной страницы заголовок, который вы хотите использовать для главной страницы, например,"Главная", введите содержимое страницы и опубликуйте ее.

*** Для этой страницы можно создать отдельный пользовательский шаблон, имя которого должно отличаться от home.php, т.к. в противном случае это может вызвать конфликт.

2. Страница записей

Вторую страницу назовите"Блог" (или "Новости", "Статьи") и опубликуйте. На этой странице будут показаны записи (анонсы) блога, поэтому не нужно добавлять на нее содержимое (оно игнорируется) и использовать для нее пользовательский шаблон.

3. Настройки

На административной странице настроек "Чтение" (Reading) выберите опцию "На главной странице отображать - Статическую страницу", укажите страницы, которые вы хотите использовать как главную страницу ("Главная") и как страницу записей ("Блог") и сохраните изменения.

reading

4. Меню

Если в вашей теме используется меню постоянных страниц, например, в "шапке" (файл темы header.php) или в боковом меню блога (файл темы sidebar.php), страница, назначенная вами главной страницей, также появится в этом меню. Чтобы исключить эту страницу из списка страниц, отображаемых в меню, нужно изменить соответствующий шаблон темы, который используется для этой главной страницы.

Изменение темы

Исключение страницы из меню

Выводит меню страниц функция wp_list_pages(), для которой можно задать для параметра exclude (исключить) id страницы (или страниц) , которую нужно исключить из меню, или для параметра include (влючить) перечислить через запятую id страниц , которые нужно включить в меню (здесь id главной страницы =10 ):

<?php wp_list_pages('exclude=10'); ?>

или

<?php wp_list_pages('include=7,8,9,11,12'); ?>

Как узнать id: URL и id в WordPress

Выбор для главной страницы

В шаблоне можно выбирать содержимое для главной страницы, отличающееся от содержимого для остальных страниц, использовав, что is_front_page() возвращает true, когда отображается главная страница, назначенная в настройках, как показано выше. Например, на главной странице можно не выводить боковое меню. Для этого в файле index.php темы вместо строки
<?php get_sidebar(); ?>
нужно написать :

<?php if (!is_front_page()) {
 get_sidebar();
} ?>

Программный выбор главной страницы

Программно создать страницы О блоге (About) и Блог (Blog) позволяет wp_insert_post().

<?php
// Статическая главная страница
$about = get_page_by_title('About');
update_option('page_on_front', $about->ID);
update_option('show_on_front', 'page');

// Страницы записей (блог)
$blog   = get_page_by_title('Blog');
update_option('page_for_posts', $blog->ID);

// Переключение на тему
//switch_theme('Template', 'stylesheet');
?>
Источник

is_home() и is_front_page()

is_home() проверяет, является ли текущая страница страницей записей (posts page).
is_front_page проверяет, является ли текущая страница главной страницей сайта.
В WordPress по умолчанию главной является страница записей, поэтому функции is_front_page() и is_home() обе проверяют нахождение на главной странице.


102 комментария: Главная (домашняя) страница

  1. Максим говорит:

    Здравствуйте, у меня сайт с музыкальным контентом.На Главной странице у меня загружены изображения с названиям альбомов (они же ссылки). Как сделать , чтобы на каждой созданной странице так же загружались изображения и названия - ссылки.Опять же при создании страницы вверху появляется название страницы в виде кнопки (сколько страниц столько и текстовых кнопок будет). Как я понял каждая последующая страница должна страницей записей как и где это прописать.еще вопрос : навигация по сайту - страницы в численном порядке нужно изменять в меню страниц, как изменишь порядок расположения так и нумерация на сайте изменится.Проблема выше конечно, а то на хостинг загрузил музыку, а на Главной странице только 9 альбомов с ссылками помещается.Так же это Главная страница не прописана в меню Страницы>Все страницы, то есть плагином её не клонируешь.

    • Admin говорит:

      То что "на Главной странице только 9 альбомов", скорее всего задано в настройках Темы или так вообще задумано автором Темы.

  2. Николай говорит:

    Здравствуйте. Возникла с проблемой вывода главной статистической страницы. Она не выводится. Выводится пост на главную, а страница нет. Где-то глюки в шаблоне. Подскажите, где поковырять, чтобы вывести главную статистическую страницу?

  3. Иван Ильин говорит:

    У меня на сайте главная страница была и статичной и динамичной. В конце-концов, почитав комментарии на разных сайтах я сделал главную странцу страницей записей. По-моему это самый лучший вариант.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *