自定义查询> post__in => $ page_id(不显示多页/仅显示1页)

时间:2018-07-27 15:28:03

标签: php wordpress

<?php
global $redux_demo; 
$page_id = $redux_demo[input_id];

$query_page = new WP_Query(array(
    'post_type'=>'page',
    'post__in'=>array($page_id)
));
?>

它仅显示一页,而不显示多页。

var_dump($page_id); // output '192, 185, 188, 150'    // include = 'punctuation'

如果手动输入= 数组(192、185、188、150)显示选定的页面。

如何解决此问题$page_id

1 个答案:

答案 0 :(得分:0)

post__in参数需要一个array的ID,并且您要向其传递一个string(有关更多详细信息,请参见https://www.thymeleaf.org/doc/tutorials/3.0/extendingthymeleaf.html

因此,您需要先将$redux_demo[input_id]转换为数组:

global $redux_demo;

// Convert input into an array, and remove whitespaces
$page_id = array_map( 'trim', explode(',', $redux_demo['input_id']) );

$query_page = new WP_Query(array(
    'post_type' => 'page',
    'post__in' => $page_id
));

此外,您似乎在这里缺少一些引号:$redux_demo[input_id]。应该不是$redux_demo['input_id']吗?