使用来自所有 WordPress 页面的查询检索数据

我有查询页面的问题。我想查询所有页面,但它不起作用。我做错了什么?我不知道。请帮我。


public function my_get_all_page_types() {

    $page_args = array(

        'post_type' => 'page',

        'post_status' => 'publish',

        'posts_per_page' => -1,

    );

    $pages = $page_args;

    $page_list = [];

    foreach ($pages as $page) {

        $page_list[$page->ID] = $page->post_title;

    }


    return $page_list;

}

这是输出:


$this->add_control( 'UA_page_list_select',

        [

            'label' => __( 'Page List Box', 'my-elementor' ),

            'type' => Controls_Manager::SELECT,

            'multiple' => false,

            'default' => [],

            'options' => $this->my_get_all_page_types(),

        ]

    );

这是我的另一种方式:


public function my_get_all_page_types() {

   $pages = get_pages(); 

   foreach ( $pages as $page ) {

      $option .= $page->post_title;

      echo $option;

   }

}


斯蒂芬大帝
浏览 133回答 1
1回答

慕的地8271018

您没有将查询参数传递给wp_query对象。只需用以下功能替换您的上述功能 -public function my_get_all_page_types() {    $page_args = array(        'post_type' => 'page',        'post_status' => 'publish',        'numberposts' => -1,    );    $pages = get_posts($page_args);    $page_list = [];    foreach ($pages as $page) {        $page_list[$page->ID] = $page->post_title;    }    return $page_list;}
打开App,查看更多内容
随时随地看视频慕课网APP