Я пытаюсь получить 3 страницы с родительской страницы (id 2035 ). Я использую wordpress 3.2.1.
Вот мой код:
<div id="videos" class="contentLeft"> <?php // get the three most recent videos (2035 is the video page) $recentVideos = get_pages('child_of=2035&number=3'); foreach ($recentVideos as $video) : ?> <div class="video"> <h5 class="video-title"><?php echo $video->post_title; ?></h5> <?php echo get_the_post_thumbnail($video->ID, 'thumbnail'); ?> <p><?php echo $video->post_excerpt; ?></p> <span class="date">Posted <?php echo date('d/m/Y', strtotime($video->post_date));?> — <a href="<?php echo get_page_link($video->ID); ?> ">View Video</a></span> </div> <?php endforeach; ?>
Если я использую: $recentVideos = get_pages('child_of=2035');
Я получаю результаты, как я ожидал; но я хочу ограничить его 3 видео. Я просмотрел документы, и он говорит, чтобы использовать number=X
Когда я использую это; Я просто получаю пустую область содержимого. Остальная часть страницы отображается отлично, за исключением случаев, когда видео должно быть. Выхода нет вообще; или ошибки; насколько я могу судить.
Я пропустил ничего очевидного?
Я также пробовал передать get_pages
массив:
$recentVideos = get_pages(array('child_of'=>2035, 'number'=>3));
но происходит то же самое.
Спасибо.
Согласно тому, что я читаю, это из-за нечетной реализации этой функции, по-видимому, это число используется для добавления оператора Limit в SQL, который используется для получения страниц. Затем он применяет требование child_of после извлечения данных из базы данных. Поэтому, если вы ограничиваете запрос тремя вероятностями, вы не получите никаких результатов, которые также являются дочерними элементами вашей страницы.
Вместо этого оставьте параметр параметра выключенным и выполните ограничение в вашем блоке foreach. Т.е. увеличивайте переменную и, если она больше вашего предела, выйдите из цикла for.