jasonrhodes
  • 0
Новичок

У меня большие проблемы после обновления до версии 3.0.1 с функцией get_page_children()

  • 0

Я использую функцию get_page_children() для создания sub_nav для клиента дизайнера, на которого я работаю. Она использует JS всплывающего окна Spry Assets, которое создает DreamWeaver, поэтому мне приходится вручную создавать такие меню, а не использовать новые функции меню в WordPress.

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

Я сузил проблему. Кодекс говорит, что вам нужно получить список всех объектов страницы, которые будут использоваться для этой функции. Вы используете функцию «запрос», которую я никогда раньше не видел.

http://codex.wordpress.org/Function_Reference/get_page_children

$my_wp_query = new WP_Query();
$all_wp_pages = $my_wp_query->query(array('post_type' => 'page'));

Эти 2 строки должны генерировать массив всех ваших объектов страницы, который может быть использован get_page_children() позже.

Однако это больше не работает, потому что $all_wp_pages НЕ ЯВЛЯЕТСЯ всеми моими страницами. У меня на этом сайте 38 страниц, и когда я вывожу массив $all_wp_pages, я получаю только 10 страниц.

Кто-нибудь знает, почему это происходит? Все 10 отображаемых страниц являются ОДНОЙ страницей и ее дочерними элементами. Но они появляются независимо от того, на какой странице вы находитесь. Это действительно странно.

Спасибо!

Share
  1. У меня недостаточно страниц для тестирования, но у меня есть идея, что 10 — это номер страницы по умолчанию.

    $all_wp_pages = $my_wp_query->query(array(
        'post_type' => 'page',
        'posts_per_page' => -1
        ));
    

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

    • 0

Оставить ответ

You must login to add an answer.