2010-11-24 2 views
0

Я занимаюсь созданием небольшой страницы параметров темы для одного из клиентов и нуждаюсь в некоторой помощи с проблемой.Параметры страницы темы Wordpress query_posts

В настоящее время у меня есть возможность вручную поместить в IDS на WordPress страниц для извлечения данных с query_posts

на основе вариантов темы создает переменную $euro_box_1_vehicles;

мои варианты заполнены как 32,39,43,54 в ввода, и когда я печатаю этот оператор с эхом, я получаю тот же результат.

Когда я только что заменил array(32,39,43,45)array($euro_box_1_vehicles), он возвращает только один результат.

<?php 
    $vehicle1 = array(
     'post__in' => array(32,39,43,45), 
     'post_type' => 'page', 
    ); 

    query_posts($vehicle1); 
    while (have_posts()) : the_post(); 
?> 
+1

Попробуйте `var_dump ($ euro_box_1_vehicles)` и сообщите нам, что печатается. – TheDeadMedic 2010-11-24 14:48:56

+0

Когда я эхо var_dump = строка (11) "32,39,43,45" – ApPeL 2010-11-24 15:56:11

ответ

2

Когда эхо var_dump = строка (11) "32,39,43,45"

В этом случае вам нужно explode$vehicle1, поскольку post__in ожидает массив;

query_posts(array(
    'post_type' => 'page', 
    'post__in' => @explode(',', $vehicle1) 
)); 
1

Update

Когда я только заменить массив (32,39,43,45) с массивом ($ euro_box_1_vehicles) он возвращает только один результат.

Если вы не заменить array(32,39,43,45) с $euro_box_1_vehiclesнеarray($euro_box_1_vehicles)? Последнее похоже, что он сделает вложенный массив с одним аргументом, т. Е. Array (array (32,39,43,45)). Это не то, что вы хотите.


Старый Ответ ....

Если я читаю вас прямо тогда query_posts() ожидает, что список идентификаторов? (32,39,43,45)

Но когда вы передаете ему $ vehicle1, вы не даете ему список идентификаторов, а двухмерный массив.

<?php 
    $vehicle1 = array(
     'post__in' => array(32,39,43,45), 
     'post_type' => 'page', 
    ); 

    query_posts($vehicle1['post_in']); //use sub-array that contains list 
    while (have_posts()) : the_post(); 
?> 
Смежные вопросы