轻微问题,我有以下代码:
$purchaseprodid = $_GET[\'ids\'];
$args = array(
\'post_type\' => \'prizes\',
\'post__in\' => array($purchaseprodid)
);
query_posts($args);
while (have_posts()) : the_post();
我在url中得到了id的逗号分隔数字,他们似乎没有查询帖子。如果我手动键入id,它们就可以正常工作,但在使用变量$purchaseprodid时就不行了。
有什么想法吗?
谢谢
最合适的回答,由SO网友:Stephen Harris 整理而成
您需要分解从中获得的字符串$_GET[\'ids\']
进入数组,此时您正在解析一个to字符串post__in
而不是ID数组。
尝试
$purchaseprodid = isset($_GET[\'ids\']) ? explode(\',\',$_GET[\'ids\']) : array();
然而,您有时会在使用
$_GET
使用WordPress,最好使用提供的API并注册变量,
see this question.