Разное

WordPress вывод дочерних страниц с миниатюрами: Как вывести список страниц с миниатюрами в WordPress

Содержание

вывод дочерних постов, страниц в WordPress

  2.0     wp-includes / post.php

Начну с того, что функция get_children() ну очень часто встречается в различных примерах — как в буржунете, так и в русскоязычном сегменте (как известно, большинство русских блоггеров как раз таки и берут оттуда весь код вдохновение).

Поэтому я и решил подробно остановиться на описании этой функции (а ещё в связи с нехваткой времени на написание объемных постов с собственными исследованиями).

get_children($args = '', $output = OBJECT)
$args
Подойдёт любой параметр функции get_posts(). Если не указан, то будут задействованы следующие значения по умолчанию:

$parametry = array(
	'numberposts' => -1, // количество выводимых постов - все
	'post_type' => 'any', // тип поста - любой
	'post_status' => 'any', // статус поста - любой
	'post_parent' => $GLOBALS['post']->post_parent // значение ID родительского элемента будет взято из $GLOBALS['post']
);

Как видите, данные значения параметров по умолчанию отличаются от значений get_posts().

Если же вы не указали собственные $args и при этом $GLOBALS['post'] тоже не существует, тогда функция возвратит пустой массив.

Также в официальном кодексе WordPress говорится, что с версии 2.6 вы обязаны указывать параметр post_type отличный от any, но я пока что не обнаружил подтверждение этой информации.

$output
Функция get_children() возвращает массив, а этот её параметр позволяет указать, из чего конкретно должен он состоять:

  • OBJECT — из объектов постов.
  • ARRAY_A — из ассоциативных массивов, где ключами являются ID элементов.
  • ARRAY_N — из нумерованных массивов.

Так как, функция get_children() является частным случаем функции get_posts(), то тут моё описание этой функции заканчивается и я перехожу к примерам.

Пример 1. Получение первого изображения, загруженного к посту, в случае, если отсутствует миниатюра.

Почему-то в классическом варианте данного примера значением второго аргумента функции get_children() выставляется OBJECT, затем для результата функции запускается foreach… На мой взгляд — чем меньше циклов в коде, тем лучше, кроме того, зачем запускать циклы для массивов из одного элемента?

Давайте посмотрим на оптимальный код. Всё, что нам потребуется, это функции:

if( has_post_thumbnail() ) { // проверяем
	the_post_thumbnail( 'full' ); // если да - выводим
} else { // если нет
	$parametry = array(
		'numberposts' => 1, // нам нужно только одно изображение
		'order'=> 'ASC', // по возрастанию
		'orderby' => 'menu_order', // по умолчанию изображения сортируются по дате, а в данном случае - по порядку, установленному в админке
		'post_type' => 'attachment', // тип поста - вложение
		'post_mime_type' => 'image', // тип вложения - изображение
		'post_parent' => $post->ID, // тут указываем ID родительского поста, в данном примере - текущий пост
 
	);
	$izobrazhenija = get_children( $parametry, ARRAY_A );
	$izobrazhenija2 = array_values( $izobrazhenija); 
	$pervoe = wp_get_attachment_image_src( $izobrazhenija2[0]['ID'], 'full' );
	echo '<img src="' . $pervoe[0] . '" />';
}

Пример 2. Слайдер из изображений.

О том, как создать слайдер из изображений поста, читайте тут.

Миша

В последние годы я долго не знал, что мне делать с сайтом misha.blog, ведь он практически не приносит никакого профита, но недавно я осознал, что моя миссия – способствовать распространению WordPress. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.

Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.

Миниатюры в WordPress. Как задать и вывести миниатюру.

Чуть больше практики по работе с миниатюрами WordPress в моём видеоуроке.

Потрясающая фишка в WordPress!

Начну с нуля. Итак, для начала вы должны понять разницу между миниатюрами и обычными изображениями из поста. Миниатюра — это что-то вроде превьюшки к посту, в самом посте она может даже и не использоваться.

Предположим, у вас есть какая-то категория, и на странице этой категории перед некоторыми записями (а может быть и перед каждой) есть какая-то картинка, которая по сути и является превьюшкой поста, т.е. миниатюрой. Если мы перейдем на страницу одной из записей, то можем найти эту картинку в её содержимом, а можем и не найти.

В общем ладно, в двух словах, миниатюра — это изображение-превью к постам, которое:

  • может использоваться, а может и не использоваться в содержимом поста,
  • может выводиться вместе ссылкой на пост на страницах категорий, меток, архивов и т.д.,
  • может автоматически подгоняться под определенный размер (я имею ввиду разрешение изображения),

По сути вы можете использовать ее даже в качестве фона сайта, т.е. для каждой записи — собственный фон.

Шаг 1. Включение поддержки миниатюр для вашей темы WordPress

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

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

add_theme_support( 'post-thumbnails' ); // для всех типов постов

Если вы не хотите использовать миниатюры во всех типах постов сразу, вы можете подключить их например только для записей (post):

add_theme_support( 'post-thumbnails', array( 'post' ) );

или только для страниц (page):

add_theme_support( 'post-thumbnails', array( 'page' ) );

или только для записей и только для страниц:

add_theme_support( 'post-thumbnails', array( 'post', 'page' ) );

Можно ли назначить миниатюру таксономии WordPress?

Стандартными средствами — нет. Вы можете использовать какой-нибудь из плагинов, добавляющих произвольные поля для таксономий (рубрик и меток в том числе), либо прописать URL изображения в описании вашего конкретного элемента таксономии.

Шаг 2. Как установить миниатюру для поста?

Вообще есть два способа установки миниатюр через админку. Они друг от друга особо ничем не отличаются — можете использовать тот, который покажется вам удобнее.

Способ 1. Метабокс «Миниатюра записи»

Он вот такой:

Имейте ввиду, что даже если метабокс у вас подключен, он может не отображаться на странице редактирования поста. Как включить его отображение?

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

Открыв её, нам нужно убедиться, что напротив Миниатюра записи стоит галочка:

После этого, уже в самом метабоксе нажимаем ссылку Задать миниатюру, затем, в открывшемся окне мы можем установить в качестве миниатюры одно из уже загруженных изображений либо загрузить новое.

Способ 2. Кнопка «Добавить медиафайл»

Итак, переходим на страницу редактирования поста и нажимаем кнопку Добавить медиафайл:

В появившемся окне кликаем по ссылке Задать миниатюру:

Вот и всё, дальше загружаем свою превьюшку либо выбираем из уже загруженных файлов.

Шаг 3. Выводим миниатюры постов на страницах сайта

То, как мы будем выводить миниатюры в данном случае может во многом зависеть от вашего шаблона WordPress. Чаще всего, во многих темах WordPress миниатюры в основном выводятся вместе с тегом <img> сразу. Но что, если нам надо получить URL миниатюры?

Рассмотрим оба случая.

the_post_thumbnail() и get_the_post_thumbnail(). Стандартный способ вывода миниатюр.

Функции the_post_thumbnail() и get_the_post_thumbnail() имеют несколько отличий:

get_the_post_thumbnail()the_post_thumbnail()
Возвращает миниатюру поста в виде HTML-тега <img>, возвращаемый HTML-код можно использовать в других функциях или записать в переменную.Выводит миниатюру поста, является эквивалентом для:

echo get_the_post_thumbnail( null );
Позволяет в качестве первого параметра указать ID поста, миниатюру которого нужно получить.При помощи этой функции можно вывести только миниатюру текущего поста из цикла.
В качестве второго параметра можно указать размер получаемой миниатюры, по умолчанию — размер, заданный в Параметры > Медиафайлы.В качестве первого параметра можно указать размер выводимой миниатюры.

Особо заморачиваться не будем, рассмотрим один и тот же пример для каждой из функций. Итак, сначала пример для get_the_post_thumbnail():

<?php
while( have_posts() ) : the_post();
	?>
	<h3><a href="<?php the_permalink() ?>"><?php the_title() ?></a></h3>
	<a href="<?php the_permalink() ?>"><?php echo get_the_post_thumbnail() ?></a>
	<?php
endwhile;

Этот пример выводит заголовки (функция the_title()) и миниатюры постов со ссылками (функция the_permalink()) на сам пост.

Тот же самый пример для функции the_post_thumbnail():

<?php
while( have_posts() ) : the_post();
	?>
	<h3><a href="<?php the_permalink() ?>"><?php the_title() ?></a></h3>
	<a href="<?php the_permalink() ?>"><?php the_post_thumbnail() ?></a>
	<?php
endwhile;

Получение URL миниатюры при помощи функции wp_get_attachment_image_src() и get_post_thumbnail_id()

Функция wp_get_attachment_image_src() нужна для получения параметров изображения — его URL, ширины и высоты (в данном случае нам будет интересен именно URL). Она не работает в цикле и её обязательным параметром является ID вложения (ID миниатюры в данном случае).

В то же время ID миниатюры мы можем получить, используя функцию get_post_thumbnail_id(), указав в качестве параметра ID поста, иначе будет возвращаться ID миниатюры текущего поста из цикла.

Посмотрим, как это будет выглядеть на примере:

$thumbnail_attributes = wp_get_attachment_image_src( get_post_thumbnail_id(), 'medium' ); // возвращает массив параметров миниатюры
echo $thumbnail_attributes[0]; // URL миниатюры

Как видите, в качестве второго параметра мы также можем указать размер получаемого изображения в виде строки ( один из зарегистрированных размеров, например thumbnail, medium, large, full и т.д.) или в виде массива array( 100, 100 ). Чтобы миниатюры на сайте получались качественными, задавайте соответствующие размеры.

Как выбрать область обрезки миниатюры?

Уверен, что у вас уже бывали случаи, когда WordPress выбирал область обрезки изображения не так, как хотелось бы, например, у человека могла отрезаться половина головы, или бы мы могли потерять часть логотипа компании при обрезке и другие важные детали.

Для того, чтобы вы смогли сами выбирать область картинки для отображения на сайте, установите себе плагин Manual Image Crop. Этот плагин позволяет для каждого загруженного изображения для его каждого размера вручную установить область, отображаемую на сайте. Потрясающий инструмент!

Миша

В последние годы я долго не знал, что мне делать с сайтом misha.blog, ведь он практически не приносит никакого профита, но недавно я осознал, что моя миссия – способствовать распространению WordPress. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.

Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.

Выводим ссылки на страницы с миниатюрами в WordPress. Плагин Page-list

С помощью плагина Page-list для WordPress вы сможете легко и просто генерировать ссылки с прикрепленными миниатюрами страниц. Это пригодится при создании различных каталогов, галерей либо при построении карты сайта. В целом, применение плагина ограничивается только вашей фантазией. Явные настройки у плагина отсутствуют, все изменения производятся с помощью прописываемых шорткодов и их параметров.

После того, как плагин Page-list успешно установлен, прописываем список шорткодов:



[pagelist] — иерархическое дерево всех страниц сайта (полезно, если требуется организовать карту сайта);

[subpages] — иерархическое дерево всех дочерних страниц текущей страницы;

[siblings] — иерархическое дерево соседних страниц текущей страницы;

[pagelist_ext] — список страниц с выводом миниатюр и текстовыми выдержками;

Параметры для pagelist, subpages, siblings

Изменить вид списков можно используя параметры. Разберем их:

 depth

Задает количество уровней страниц в списке. Значение по умолчанию равно нулю, т.е. отсутствие ограничений на включение. Пример применения:

Если вам нужен не иерархический, а плоский список:

child_of

Используя этот параметр можно сформировать список дочерних страниц указанной страницы:

при этом 4 – page ID;

То же самое для текущей страницы:



[subpages] или [pagelist child_of=»current»] или [pagelist child_of=»this»]

Если необходимо отобразить страницы, соседствующие с текущей:



 [siblings] или [pagelist child_of=»parent»]

exclude

Задает разделяемый запятыми перечень страниц, которые не будут включены в список:



[pagelist exclude=»6,7,8″]

ID страниц, которые не должны включаться в список, указываются через запятую. Для удаления текущей страницы:



[pagelist exclude=»current»]

exclude_tree

Аналогичная функция для удаления дерева страниц:



[pagelist exclude_tree=»7,10″]

Все страницы, идентификаторы которых передаются параметру, а также их подстраницы, будут удалены из списка.

 include

Общий вид:



[pagelist include=»6,7,8″]

Добавляет в список страницы, идентификаторы которых были переданы параметру. Идентификаторы разделяются запятыми.

 title_li

Используется для задания имени списка:



[pagelist title_li=»List of pages»]

number

Задает число страниц, включаемых в список:

offset

Для смещения (пропуска) некоторых страниц:

meta_key

Для составления перечня страниц, у которых есть определенное поле:



 [pagelist meta_key=»metakey» meta_value=»metaval»]

 show_date

Для вывода даты создания (если параметру присвоено created), изменения (modified) и обновления (updated)страницы.



[pagelist show_date=»created»]

sort_order

Чтоб отсортировать по возрастанию или убыванию:



[pagelist sort_order=»desc»]

Для сортировки от меньшего к большему параметру нужно присвоить значение asc, а от большего к меньшему — desc.

 link_before

Текст, идущий перед адресом ссылки



 [pagelist link_before=»span»]

Для добавления такого текста необходимо в визуальном редакторе изменить тип ввода на текстовый.

 link_after

Текст, идущий после адреса ссылки



[pagelist link_after=»span»]

Для добавления такого текста необходимо в визуальном редакторе изменить тип ввода на текстовый.

 class

Определяет принадлежность к тому или иному CSS-классу:



[pagelist]

Параметры для pagelist_ext

Рассмотрим параметры для pagelist_ext:

Используется, если необходимо вывести для данной страницы список всех ее подстраниц. Если таких страниц нет, будет выведен полный список страниц на сайте.

 show_image

Скрывает или выводит миниатюру изображения.



[pagelist_ext show_image=»0″]

 show_first_image

Если нет миниатюры, то скрывает либо выводит первую картинку на странице.



[pagelist_ext show_first_image=»1″]

Имеет более низкий приоритет перед параметром show_image.

 show_title

Показывает или скрывает заголовок.



 [pagelist_ext show_title=»0″]

 show_content

Показывает или скрывает контент, находящийся на странице.



[pagelist_ext show_content=»0″]

more_tag

Отображает контент перед и после тега.



 [pagelist_ext more_tag=»0″]

При использовании этого параметра, more_link автоматически не добавляется.

 limit_content

Ограничивает отображаемый контент, предустановленное значение равно 250 символам. Имеет более низкий приоритет по сравнению с more_tag.



[pagelist_ext limit_content=»100″]

 image_width

Задает ширину отображаемого изображения, предустановленное значение равно 50.



 [pagelist_ext image_width=»80″]

image_height

Задает высоту отображаемого изображения, предустановленное значение равно 50.



 [pagelist_ext image_height=»80″]

child_of

Используя этот параметр можно сформировать список подстраниц указанной страницы:



[pagelist_ext child_of=»4″]

при этом 4 – page ID;

 parent

Используя этот параметр можно сформировать список подстраниц указанной страницы:



[pagelist_ext parent=»4″]

при этом 4 – page ID; а глубина будет составлять 1 уровень.

 sort_order

Чтоб отсортировать по возрастанию или убыванию:



[pagelist_ext sort_order=»desc»]

Для сортировки от меньшего к большему параметру нужно присвоить значение asc, а от большего к меньшему — desc.

 sort_column

Сортирует содержимое колонок:



[pagelist_ext sort_column=»menu_order»]

Изначально сортируется по заголовку.

Также можно отсортировать по идентификатору страницы или автора, по имени или по дате создания/изменения.

 hierarchical

Для формирования иерархического списка



[pagelist_ext hierarchical=»0″]

 exclude

Задает разделяемый запятыми перечень страниц, которые не будут включены в список:



[pagelist_ext exclude=»6,7,8″]

exclude_tree

Аналогичная функция для удаления дерева страниц:



[pagelist_ext exclude_tree=»7,10″]

Все страницы, ID которых передаются параметру, а также их подстраницы, будут удалены из списка.

 include

Общий вид:



[pagelist_ext include=»6,7,8″]

Добавляет в список страницы, идентификаторы которых были переданы параметру. Идентификаторы разделяются запятыми.

 meta_key

Для составления перечня страниц, у которых есть определенное поле:



[pagelist_ext meta_key=»metakey» meta_value=»metaval»]

authors

Для формирования списка страниц, написанных указанными авторами



[pagelist_ext authors=»6,7,8″]

number

Задает число страниц, включаемых в список:



[pagelist_ext number=»10″]

offset

Параметр содержит имена страниц, которые необходимо пропустить во время формирования списка



[pagelist_ext offset=»5″]

post_type

Содержит тип записи



[pagelist_ext post_type=»page»]

post_status

Разделяемый запятыми список возможных типов записей.



[pagelist_ext post_status=»publish»]

class

Определяет принадлежность к тому или иному CSS-классу:



[pagelist_ext]

strip_tags

Отображает текст без тегов. Для отображения тегов:



[pagelist_ext strip_tags=»0″]

Изначально активен.

 strip_shortcodes

Отображает текст без шорткодов. Для отображения шорткодов:



[pagelist_ext strip_shortcodes=»0″]

Изначально активен.

 show_child_count

Для отображения только одной дочерней страницы понадобится использовать:



 [pagelist_ext show_child_count=»1″]

 show_meta_key

Необходим для вывода определенного поля. Изначально значение не присвоено. Если параметр активен, но ключ не задан — поле выведено не будет.



 [pagelist_ext show_meta_key=»your_meta_key»]

meta_template

Для создания образца поля используйте



[pagelist_ext show_meta_key=»your_meta_key» meta_template=»Meta: %meta%»]

Скачать плагин Page-list


Возможно, Вам будет интересно ↓↓↓

wp_list_pages() — выводит список страниц WordPress

  1.5.0     wp-includes / post-template.php

Выводит список страниц WordPress в виде ссылок на них. Часто используется в темах в шапке и в сайдбаре.

wp_list_pages($args = '')
$args
(массив) Список значений параметра $args по умолчанию:

$args = array(
	'authors'      => '', // все авторы
	'child_of'     => 0, // и родительские и дочерние страницы
	'date_format'  => get_option('date_format'),
	'depth'        => 0, // любой уровень вложенности
	'echo'         => 1, // вывести результат
	'exclude'      => '', // ничего не исключать
	'include'      => '', // не выводить какие-либо конкретные страницы
	'link_after'   => '', // ничего не добавлять перед ссылкой
	'link_before'  => '', // ничего не добавлять после ссылки
	'post_type'    => 'page', // тип поста - только страницы
	'post_status'  => 'publish', // статус - только опубликованные
	'show_date'    => '', // не указывать дату
	'sort_column'  => 'menu_order, post_title', // сорировать по порядку, а затем по заголовку
        'sort_order'   => '', // порядок сортировки - по возрастанию
	'title_li'     => __('Pages'), // заголовок списка - Страницы
);
authors
(строка) Укажите через запятую ID авторов, страницы, опубликованные которыми, нужно вывести.

<ul>
	<?php wp_list_pages( 'authors=1,15' ) ?>
</ul>
child_of
(целое число) Выводит дочерние страницы, находящихся на всех уровнях вложенности, для страницы с указанным ID.

<ul>
	<?php wp_list_pages( 'child_of=15' ) ?>
</ul>
show_date
(строка) Нужно ли отобразить дату публикации или изменения страницы:

  • modified — выводить дату изменения,
  • created (либо любое другое значение, отличное от пустой строки) — отображать дату публикации;
date_format
(строка) Формат даты (зависит от предыдущего параметра). Пример:

<ul>
	<?php 
		$args = array(
			'show_date' => 'modified',
			'date_format' => 'j M Y'
		);
		wp_list_pages( $args );
	?>
</ul>
sort_column
(строка) По какому параметру сортировать выводимые ссылки на страницы:

  • post_title — по заголовку страниц,
  • menu_order — по порядку (устанавливается в админке при редактировании страниц),
  • post_date — по дате создания,
  • post_modified — по дате последнего изменения,
  • ID — по ID,
  • post_author — по ID автора,
  • post_name — по ярлыку страниц;
sort_order
(строка) Порядок сортировки:

  • ASC — по возврастанию (по умолчанию),
  • DESC — по убыванию;

Сортируем по заголовку в обратном алфавитном порядке:

<ul>
	<?php wp_list_pages( 'sort_column=post_title&sort_order=DESC' ) ?>
</ul>
exclude
(строка) Укажите через запятую ID страниц, которые нужно исключить из списка.
exclude_tree
(строка) Укажите через запятую ID родительских страниц, которые нужно исключить из списка вместе с их дочерними страницами.
include
(строка) Если вам нужно включить только какие-то конкретные страницы в выводимый список, укажите их IDы через запятую, используя этот параметр.
depth
(целое число) Параметр позволяет задать максимальный уровень вложенности выводимых страниц:

  • 0 — любой уровень вложенности, страницы выводятся с учетом иерархии,
  • -1 — любой уровень вложенности, но без учета иерархии,
  • 1 — только страницы с нулевым уровнем вложенности,
  • 2, 3, … — укажите максимальный уровень вложенности страниц.
title_li
(строка) Заголовок списка. Если указать null или пустое значение, заголовок не будет добавлен, а список не будет заключен в тег <ul>.

Например в этих случаях заголовка не будет:

<ul>
	<?php wp_list_pages('title_li='); ?>
</ul>
<ul>
	<?php wp_list_pages('exclude=1,3,7&title_li='); ?>
</ul>
echo
(логическое) Что в итоге нужно сделать с полученным результатом:

  • 1 (true) — вывести,
  • 0 (false) — возвратить.
<?php
$children53 = wp_list_pages('title_li=&child_of=53&echo=0');
if ($children53) { ?>
<ul>
	<?php echo $children53; ?>
</ul>
<?php } ?>
meta_key
(строка) Название произвольного поля (используется в совокупности с параметром meta_value).
meta_value
(строка) Значение произвольного поля (используется в совокупности с параметром meta_key).

<ul>
	<?php wp_list_pages( 'meta_key=color&meta_value=white' ) ?>
</ul>
link_before
(строка) Текст или код HTML, который нужно добавить перед анкором ссылки внутри тега <a>.
link_after
(строка) Текст или код HTML, который нужно добавить после анкора ссылки внутри тега <a>.
number
(целое число) Количество ссылок на страниц, которое нужно вывести (по умолчанию — все).
offset
(целое число) Количество страниц с начала списка, которые нужно пропустить.
post_type
(строка) Вы можете выводить не только страницы, но и другие типы постов с иерархией.

Например выведем работы из портфолио:

$args = array(
	'post_type'=> 'portfolio',
	'title_li'=> 'Портфолио'
);
wp_list_pages( $args );
post_status
(строка) Страницы с какими статусами следует включить в список. Например, опубликованные или черновики. Список всех статусов здесь. Можно указать несколько статусов через запятую.

Список изменений:

  • 2.7 : Добавлены параметры link_before, link_after и exclude_tree.
  • 2.8 : Добавлены параметры number и offset.

Миша

В последние годы я долго не знал, что мне делать с сайтом misha.blog, ведь он практически не приносит никакого профита, но недавно я осознал, что моя миссия – способствовать распространению WordPress. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.

Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.

Что такое дочерние страницы и как их создавать в WordPress?

Главная » Уроки » Что такое дочерние страницы и как их создавать в WordPress?

Если вы начинающий пользователь движка и понятия не имеете, что такое «Родительские» и «Дочерние» страницы, и для чего они вообще нужны, а только слышали о них и хотелось бы подробно узнать разницу. То как раз эта заметка созданная для вас, чтобы подробно разъяснить этот момент начинающим пользователям движка WordPress.

Какие есть возможности вывода информации на WordPress сайтах?

Сперва нужно понимать, что Страницы и Заметки — это два типа контента по умолчанию в системе WordPress.

Заметки, являются частью блога и отображаются в обратном хронологическом порядке на странице их вывода (сначала новые записи, потом предыдущие). Это, так называемый, динамичный элемент сайта, ведь с помощью заметок публикуются различные новости, статьи, медиафайлы и так дальше. Обычно они организовываются с помощью категорий и меток.

Страницы же представляют собой одноразовый или автономный контент, который не является частью динамичного блога. Например, страница «О нас» или страница «Контакты» остается долгое время на одном месте сайта и на них очень редко обновляется контент. Их вы не сможете сортировать, как заметки, но они могут быть иерархическими. А это означает, что вы можете организовать их с помощью Родительских и Дочерних страниц.

Как правило, коммерческие или бизнес-сайты используют только Cтраницы для создания структуры своего веб-сайта. Таким образом, они могут создать свой сайт без использования страницы блога (без вывода заметок). Поэтому, умение использовать иерархические структуры страниц — очень важно для разработчиков сайтов на WordPress.

Что такое Родительская и Дочерняя страница в WordPress?

Родительская — это более обширная по значению страница, которая может в себя включать более узконаправленные (Дочерние). Например, Родительская страница под названием «О нас» может содержать в себе «Наша команда», «История», «Контакты» и много других подстраниц в этом направлении.

Но это еще не все. На любой дочерней странице также могут быть свои дочерние страницы и так дальше. Таким образом, вы можете создавать иерархию между вашими страницами и делать правильную последовательную структуру сайта.

Думаем, с теорией достаточно, можно уже переходить к практике.

Как создать дочернюю страницу в WordPress?

Чтобы создать Дочернюю страницу, вам понадобится сначала иметь готовою Родительскую страницу. Если у вас уже есть такая, которую вы хотели бы использовать в качестве Родителя — отлично, если нет — создайте её. Для этого просто перейдите в админке сайта в раздел «Страницы» –> «Добавить новую» и просто создайте страницу с названием Родителя.

После этого ещё раз перейдите на создание новой страницы, но, на этот раз, обратите внимание в правую часть экрана, где находятся её настройки. Найдите там блок с названием «Атрибуты страницы» и вы увидите, что в нем есть возможность выбора Родителя для нее.

По умолчанию выбор стоит в положении «нет родительской», что означает, что эта страница является отдельной страницей без привязки. Но в этом раскрывающемся списке вы увидите список всех страниц вашего сайта, где вам нужно выбрать ту, которую вы хотите использовать в качестве Родителя для этой дочерней страницы. После выбора просто публикуете страницу и все, готово!

Чтобы просмотреть все Дочерние страницы, вам нужно перейти на вкладку «Страницы» –> «Все страницы» в области администрирования WordPress. И тут вы увидите все Дочерние страницы, под их Родительской страницей, с дополнительным визуальным символом «тире».

Теперь, если страница после создания не добавляется автоматически в меню вашего сайта, вам нужно добавить её вручную. Переходим на вкладку «Внешний вид» –> «Меню», выбираем её из списка страниц, нажимаем «Добавить» и простым перетаскиванием ставим её в нужное вам место на меню.

Полезно будет знать, что не обязательно Дочерние страницы ставить под Родителя. Их можно размещать в меню, как угодно. Но она все равно будет привязана к основной.

Вот и все. Это настолько просто! Мы надеемся, что эта статья помогла вам научиться создавать Дочерние страницы в WordPress и понять, для чего они нужны.

Дочерняя страница в WordPress: создание и редактирование

Страницы в WordPress могут быть автономными или иерархическими, то есть страница может иметь свои собственные подстраницы, называемые дочерними страницами. В этой статье мы покажем вам, как легко создать дочернюю страницу в WordPress, что хорошо организует ваши страницы.

Что такое дочерняя страница в WordPress

Страницы и записи – это два типа контента по умолчанию в WordPress. Записи являются частью блога и отображаются в обратном хронологическом порядке (сначала новые записи). Обычно они организованы в соответствии с категориями и тегами.

Страницы представляют собой одноразовый или автономный контент, который не является частью блога. Например, страница «О нас» или страница «Свяжитесь с нами». Они могут быть иерархическими. Это означает, что вы можете организовать их с родительскими и дочерними страницами.

Как правило, бизнес-сайты используют страницы для создания структуры веб-сайта. Таким образом, они могут создавать веб-сайт без создания блога. Те, кто хотят добавить блог в свою маркетинговую стратегию, могут сделать это, просто создав отдельную страницу блога.

Однако, если у вас слишком много страниц, становится сложно их организовать. Здесь как раз и рпигодятся дочерние страницы. Вы можете создать более значимую страницу как «Родитель», а затем добавить дочерние страницы.

Например, родительская страница под названием «О нас» может содержать членов команды, историю, карьеру и другие страницы в качестве дочерних страниц.

У любой дочерней страницы также могут быть свои дочерние страницы и т. д. Таким образом, вы можете создавать отношения между вашими страницами и создавать правильную структуру сайта.

Смотрите также:

Все уроки WordPress.

Как создать дочернюю страницу

Чтобы создать дочернюю страницу, вам понадобится родительская страница. Если у вас уже есть страница, которую вы хотели бы использовать в качестве родителя, тогда идем дальше.

Просто перейдите на страницу «Добавить новое», чтобы создать новую страницу или отредактировать существующую страницу в области администрирования WordPress. С правой стороны вы увидите окно « Атрибуты страницы» с раскрывающимся списком «Родитель» .

В раскрывающемся списке «Родитель» выводится список всех страниц вашего сайта. По умолчанию он установлен в «no parent (не родитель)», что означает, что эта страница является отдельной страницей без иерархии. В раскрывающемся меню вам нужно выбрать страницу, которую вы хотите использовать в качестве родителя.

После этого вы можете просто продолжить и сохранить свои изменения. Этот процес можно повторять, создавая все новые дочерние страницы.

Чтобы просмотреть дочерние страницы, вы можете перейти на вкладку Страницы –» Все страницы в области администрирования WordPress. Вы увидите дочерние страницы в виде иерархической структуры, перечисленные в их родительской странице с  префиксом.

Затем вы можете продолжить и добавить свои дочерние страницы в меню навигации вашего веб-сайта в качестве элементов подменю.

Надеемся, что статья помогла вам научиться создавать дочернюю страницу в WordPress.

Чтобы не пропустить новые функции нашего хостинга и узнать больше об WordPress, подпишитесь на наш канал YouTube. Вы также можете найти нас в Twitter и Facebook .

Источник: wpbeginner.com

Смотрите также:

Изучает сайтостроение с 2008 года. Практикующий вебмастер, специализирующий на создание сайтов на WordPress. Задать вопрос Алексею можно на https://profiles.wordpress.org/wpthemeus/

CC Child Pages — плагин для WordPress

CC Child Pages — простой плагин для отображения ссылок на дочерние страницы с помощью шорткода.

Дочерние страницы отображаются в адаптивных полях и включают заголовок страницы, отрывок и ссылку «Подробнее…».

Вы можете выбрать 1, 2, 3 или 4 столбца.

Макеты

3 и 4 столбца изменятся до макета 2 столбца на небольших устройствах, чтобы обеспечить их удобочитаемость.

Кнопка редактора дочерних страниц CC

CC Child Pages теперь добавляет кнопку в текстовый редактор WordPress, позволяя быстро вставлять шорткод и выбирать многие общие параметры.

Виджет дочерних страниц CC

CC Child Pages также включает виджет для отображения дочерних страниц на ваших боковых панелях.

Виджет может быть настроен для отображения дочерних элементов текущей страницы или определенной страницы, или для отображения всех страниц.

Страницы можно отсортировать по порядку меню, заголовку или идентификатору. Вы также можете выбрать глубину отображаемых страниц.

Теперь вы также можете установить флажок, чтобы отобразить все страницы, и в этом случае виджет будет вести себя так же, как стандартный виджет Pages, но с дополнительными параметрами.

Использование шорткода

Самый простой вариант — использовать шорткод без параметров:

  [child_pages]
  

Это покажет дочерние страницы для текущей страницы в 2 столбца.

Вы можете добавить параметр cols , чтобы выбрать количество столбцов:

  [child_pages cols = "1"]
[child_pages cols = "2"]
[child_pages cols = "3"]
[child_pages cols = "4"]
  

… если для столбцов установлено любое значение, кроме 1, 2, 3 или 4, значение будет проигнорировано.

Вы также можете показать дочерние страницы определенной страницы, добавив ID страницы следующим образом:

  [child_pages]
  

… или вы можете указать несколько идентификаторов в списке, разделенном запятыми (не работает при использовании list = "true" )

  [child_pages]
  

Чтобы исключить страницы, используйте параметр exclude .Это позволяет вам указать разделенный запятыми список идентификаторов страниц, которые будут исключены из вывода шорткода.

  [child_pages exclude = "5,33,45"]
  

Для отображения только определенных страниц можно использовать параметр page_ids . Это принимает список идентификаторов, разделенных запятыми. Если этот параметр используется, параметры id и exclude игнорируются.

  [child_pages page_ids = "3,7,10,35"]
  

Приведенный выше код отображает только перечисленные страницы.

Если вы хотите использовать текст, отличный от стандартного «Подробнее…» для ссылки на страницы, это можно указать с помощью параметра more :

  [child_pages more = "Еще ..."]
  

Вы также можете полностью скрыть ссылку «Подробнее…», установив для параметра hide_more значение «true» :

  [child_pages hide_more = "true"]
  

Поскольку у посетителя нет другого способа установить ссылку на дочернюю страницу, вы можете сделать так, чтобы заголовки страниц ссылались на дочернюю страницу, установив для параметра link_titles значение «true» :

  [child_pages link_titles = "true"]
  

(Это в основном предназначено для использования с параметром hide_more , но может использоваться независимо, если вы хотите иметь как заголовки, так и текстовую ссылку «Подробнее…» на дочернюю страницу.)

При указании link_titles = "true" вы можете применить свой собственный стиль к ссылкам. Для этого вы можете указать стиль с помощью параметра title_link_class :

  [child_pages link_titles = "true" title_link_class = "my_title_link_class"]
  

Вы можете отобразить эскиз избранного изображения для каждой страницы (если он установлен), установив для параметра thumbs значение «true» :

  [child_pages thumbs = "true"]
  

Теперь вы также можете отображать миниатюры разных размеров по сравнению с размером по умолчанию («средний»).Просто укажите размер эскиза в параметре thumbs . Вы даже можете указать собственные размеры изображений.

  [child_pages thumbs = 'large']
  

Вы можете сделать миниатюры ссылкой на соответствующую дочернюю страницу, установив для link_thumbs значение "true" :

  [child_pages thumbs = 'large' link_thumbs = "true"]
  

… обратите внимание, что указание параметра link_thumbs не будет иметь никакого эффекта, если для параметра thumbs не установлено значение true или размер эскиза.

Вы можете указать цель для ссылок, добавляемых плагином, установив параметр link_target . Это будет работать точно так же, как установка параметра target для тега HTML :

  [child_pages link_target = "_ blank"]
  

Вы можете ограничить длину отрывка, указав слов параметр :

  [child_pages words = "10"]
  

Вы можете полностью скрыть отрывок, установив для параметра hide_excerpt значение «true» :

  [child_pages hide_excerpt = "true"]
  

Вы можете предотвратить усечение пользовательских выдержек, установив для параметра truncate_excerpt значение «false»:

  [child_pages truncate_excerpt = "false"]
  

… при этом пользовательские отрывки будут отображаться точно в том виде, в котором они были введены, без сокращения.(Особенно полезно при использовании плагина Rich Text Excerpts, в этом случае все стили будут сохранены.)

Если для truncate_excerpt установлено значение true , отрывки будут усечены, только если они превышают указанное количество слов (по умолчанию 55). Когда пользовательские фрагменты усекаются, любой HTML-код будет удален.

Если вы вставили еще тегов в свои сообщения / страницы, вы можете обнаружить, что сообщение Продолжить чтение включено в отрывок.Чтобы скрыть это, установите для параметра hide_wp_more значение true :

  [child_pages hide_wp_more = "true"]
  

Если вы хотите отобразить полное содержимое перечисленных страниц, вы можете установить для параметра show_page_content значение true :

  [child_pages show_page_content = "true"]
  

Чтобы изменить порядок, в котором перечислены дочерние страницы, вы можете использовать параметры orderby и order :

  [child_pages orderby = "title" order = "ASC"]
  

Параметр orderby может иметь одно из следующих значений:
menu_order (значение по умолчанию) — показывает страницы, отсортированные по порядку, в котором они появляются в админке WordPress.

  id сортирует страницы по идентификатору страницы
title сортирует страницы в алфавитном порядке по названию
slug сортирует страницы в алфавитном порядке в соответствии с slug (page_name) страницы
автор сортирует страницы по автору
date сортирует страницы по дате их создания
изменено сортирует страницы по дате изменения
rand показывает страницы в случайном порядке
  

Параметр порядка может быть установлен на:

  ASC показывает страницы в возрастающем порядке, отсортированные по значению ʻorderby`
DESC показывает страницы в порядке убывания, отсортированные по значению ʻorderby`
  

Теперь вы также можете использовать параметр skin , чтобы выбрать цветовую схему для дочерних страниц, как показано ниже:

  [child_pages skin = "simple"] (цветовая схема по умолчанию)
[child_pages skin = "красный"]
[child_pages skin = "зеленый"]
[child_pages skin = "blue"]
  

Если вы хотите самостоятельно стилизовать блоки дочерних страниц, вы также можете указать параметр class .Если используется, это переопределяет параметр span и добавляет указанное имя класса в сгенерированный HTML:

  [child_pages]
  

Если вы не используете предоставленные скины, вы можете запретить загрузку файла CSS для скинов с помощью опций CC Child Pages в меню «Настройки».

Наконец, вы также можете отобразить просто неупорядоченный список (

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

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