2013-07-16 3 views
0

Это может быть основной вопрос, но я не могу найти правильное решение.PHP дополнительные пользовательские поля

В передовых пользовательских полей я создал группу, CD Field, в CD есть три поля, название, информация, автор и группа показывает, если категория = CD

Поэтому, когда я сделать новый пост с я заполняю эти три поля. В категориях CD есть 10 сообщений.

Теперь проблема, с которой я столкнулась, отображает все сообщения на странице.

Вот код, который я попытался

<?php if (have_posts()) : while (have_posts()) : the_post(); ?> 

     <?php query_posts(array(  'posts_per_page' => -1,  'cat' => '6',  'CD' => (get_query_var('CD') ? get_query_var('CD') : 1),)); 

      if (have_posts()) { 
       while (have_posts()) { 
        the_post(); 
      get_post_meta(); 
       } // end while 
       } // end if 
      ?> 


      <?php endwhile; endif; ?> 

Это возвратил ошибку Warning: Missing argument 1 for get_post_meta(), called in /Volumes/shared/Digital/_Websites/londonconchord/wp-content/themes/conchord/t-disc.php on line 25 and defined in /Volumes/shared/Digital/_Websites/londonconchord/wp-includes/post.php on line 1792

Я попробовал другую попытку

<p><?php query_posts('cat=6'); 
     the_field('title'); 
     the_field('info'); 
     the_field('author'); ?></p> 

мне больше повезло здесь, как я печатал какую-то информацию, однако только 1-й пост в категории, и он продолжал повторяться, я хотел все 10 сообщений и не повторял.

Я думаю, что им близко просто ищет эти последние указатели

Благодарности

+0

'?> Havenard

ответ

1

Мое решение (заключение) Надеюсь, что это может помочь другим

<?php 

      $args = array('cat' => 6); 
      $category_posts = new WP_Query($args); 

      if($category_posts->have_posts()) : 
       while($category_posts->have_posts()) : 
       $category_posts->the_post(); 
     ?> 
       <div class="article"> 
       <div class="articleinfo"> 
       <h3><?php the_field('title'); ?></h3> 
       <?php the_field('author'); ?> 
       <?php the_field('label'); ?> 
        </div> 
      <img src="<?php the_field('cd_image'); ?>" height="200" width="200" alt="cd-image" /> 

      </div> 

     <?php 
       endwhile; 
      else: 
     ?> 

       Oops, there are no posts. 

     <?php 
      endif; 
     ?> 

перебирает все посты и тянет ACF я необходимый

0

КАЖЕТСЯ get_post_meta() имеет переменные и ваши не хватает его.

Нравится get_post_meta($var) Ожидается, но вы просто звоните get_post_meta(). Надеюсь, поможет.

0

Вы не отвечаете должным образом Я не думаю.

Вы должны захватить поле

get_field('YOUR FIELD NAME')); 

Тогда проходное и захватить то, что вам нужно как подполе.

the_sub_field('YOUR SUB FIELD'); 

Пример

<?php if(get_field('YOUR FIELD NAME')): while(has_sub_field('YOUR FIELD NAME')): ?> 
     <img class="logo" src="<?php the_sub_field('logo'); ?>" /> 
     <h1><?php the_sub_field('title'); ?></h1> 
    <?php endwhile; endif; ?> 

Для примера. Надеюсь, это поможет ... дай мне знать.

0

я не мог получить эфир указанных выше к работе решений, спасибо, хотя ребята за ваш вклад,

здесь мое решение до сих пор

<h3><?php the_field('title', 475); ?></h3> 
        <?php the_field('info', 475); ?> 
        <?php the_field('author', 475); ?> 
         </div> 
       <img src="<?php the_field('cd_image', 475); ?>" height="200" width="200" alt="" /> 

Тогда я просто повторил это и изменил id от 475 к другим, теперь ive потянул во все сообщения, однако падение состоит в том, что любые новые сообщения, которые я должен добавить в этот код снова.

Могу ли я использовать запрос wp, чтобы вытащить эти 4 поля в переменной, а затем распечатать эту переменную, а затем прокрутить категорию до тех пор, пока не будут напечатаны все сообщения?

Смежные вопросы