Построение индексной страницы из настраиваемых полей

Я начинаю углубляться в пользовательские поля WordPress и хочу реплицировать эту страницу в WordPress: http://www.clubsact.com.au/corporate/index.php

Таким образом, мой сайт не плотно структурирован для отношений между родителями и дочерними элементами, я создал настраиваемое поле «Partner_Level» и на основе уровня партнера, введенного автором, функция выведет изображение функции, связанное с этим сообщением, и создаст мою индексную страницу ,

Хотя я даже не могу заставить свой запрос работать с функцией. Если я следую инструкциям на этой странице: http://css-tricks.com/snippets/wordpress/custom-loop-based-on-custom-fields/, написав прямо на мой шаблон, все хорошо. Поэтому я предполагаю, что у меня нет чего-то правильно настроенного, но у меня что-то теряется.

functions.php

function the_partners($cpLevel) { // This query grabs all fields with Metadata, matches $querydetails = " SELECT wposts.* FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta WHERE wposts.ID = wpostmeta.post_id AND wpostmeta.meta_key = 'Partner_Level' AND wpostmeta.meta_value = '$cpLevel' AND wposts.post_status = 'publish' AND wposts.post_type = 'page' ORDER BY wposts.post_date DESC "; $pageposts = $wpdb->get_results($querydetails, OBJECT); if ($pageposts) { echo "Got em"; } } 

page_corp.php

 if (have_posts()) : while (have_posts()) : the_post(); <h1><?php the_title(); ?></h1> the_partners('Gold'); endwhile; endif; 

На странице Im просто ожидает, что «Got em» будет напечатано на экране, хотя Im получает пробел.

Ура,

Фил

я предлагаю пойти по-другому, используя get_pages ()

например

 $args = array( 'meta_key ' => 'Partner_Level', 'meta_value' => 'Gold' ); $pageslist = get_pages( $args ); 

$ pageslist должен иметь все ваши сообщения на уровне «золота».

В итоге я вернулся к своему первоначальному подходу.

Добавление глобального $ wpdb; в моей функции я смог получить информацию, в которой я нуждался.

Сейчас все работает. Надеюсь, это поможет другим.