2013-03-04 57 views
0

好吧,所以我的PHP是非常糟糕的,所以它可能很难理解我的意思是在某些点,但几乎我有一个WordPress的循环,并在一个点上,我得到的职位的类别和将其反映到课堂中。从WP阵列回声多个类别

有些帖子有多个类别,我想将它们都回显到课程中。

到目前为止,这是我用得到的类别

$categories = get_the_category(); 

,这是我怎么回应他们

<?php echo $categories[0]->category_nicename; ?> 

如果我改变

<?php echo $categories[1]->category_nicename; ?> 

它得到的第二类,但我希望它得到所有人

这是完整的代码

<?php query_posts("post_type=portfolio"); ?> 
<?php $i=0; /** start the project loop here */?> 
<?php if(have_posts()):?> 
<?php while(have_posts()) : the_post();?> 
<?php $i++; ?> 

<?php 
$image1ID = get_field('thumbnail'); 
$image1 = wp_get_attachment_image_src($image1ID, '500by250-thumb'); 
$attachment = get_post($image1ID); 
$image1_title = $attachment->post_title; 
$categories = get_the_category(); 

?>   

    <pre> 
     <?php print_r($categories) ?> 
    </pre> 

    <li data-type="<?php echo $categories[0]->category_nicename; ?>" data-id="id-<?php echo $i ?>" class="portfolio-thumb <?php the_field('thumb_size');?>"> 

     <a data-scroll="#portfolio-second" href="<?php the_permalink(); ?>" title="<?php echo $image_title; ?>"> 
      <div class="hover-content"> 
       <span class="thumb-caption"><?php the_field('thumb_caption');?></span> 
       <span class="thumb-title"><?php the_title();?></span> 
      </div> 
      <img src="<?php echo $image1[0] ?>" alt="<?php echo $image_title; ?>"> 
     </a> 

    </li> 

<?php endwhile; ?> 
<?php else: ?> 
<?php endif; ?> 
<?php wp_reset_query(); ?> 

回答

2

如果在所有类别阵列要循环,你可以使用foreach声明象下面这样:

<?php foreach($categories as $category){?> 
    <li data-type="<?php echo $category->category_nicename; ?>" data-id="id-<?php echo $i ?>" class="portfolio-thumb <?php the_field('thumb_size');?>"> 

         <a data-scroll="#portfolio-second" href="<?php the_permalink(); ?>" title="<?php echo $image_title; ?>"> 
          <div class="hover-content"> 
           <span class="thumb-caption"><?php the_field('thumb_caption');?></span> 
           <span class="thumb-title"><?php the_title();?></span> 
          </div> 
          <img src="<?php echo $image1[0] ?>" alt="<?php echo $image_title; ?>"> 
         </a> 

        </li> 
<?php } ?> 

完整的代码是:

 <?php query_posts("post_type=portfolio"); ?> 
     <?php $i=0; /** start the project loop here */?> 
     <?php if(have_posts()):?> 
     <?php while(have_posts()) : the_post();?> 
     <?php $i++; ?> 

     <?php 
     $image1ID = get_field('thumbnail'); 
     $image1 = wp_get_attachment_image_src($image1ID, '500by250-thumb'); 
     $attachment = get_post($image1ID); 
     $image1_title = $attachment->post_title; 
     $categories = get_the_category(); 

     ?>   

      <pre> 
       <?php print_r($categories) ?> 
      </pre> 

      <?php foreach($categories as $category){?> 
    <li data-type="<?php echo $category->category_nicename; ?>" data-id="id-<?php echo $i ?>" class="portfolio-thumb <?php the_field('thumb_size');?>"> 

         <a data-scroll="#portfolio-second" href="<?php the_permalink(); ?>" title="<?php echo $image_title; ?>"> 
          <div class="hover-content"> 
           <span class="thumb-caption"><?php the_field('thumb_caption');?></span> 
           <span class="thumb-title"><?php the_title();?></span> 
          </div> 
          <img src="<?php echo $image1[0] ?>" alt="<?php echo $image_title; ?>"> 
         </a> 

        </li> 
<?php } ?> 
     <?php endwhile; ?> 
     <?php else: ?> 
     <?php endif; ?> 
     <?php wp_reset_query(); ?> 
+0

好吧我试过了,它的工作原理,但它为每个类别制作了单独的锂 然后我试着把forloop insi de的数据类型,但它将字符串分类在一起 – 2013-03-04 23:24:35

+0

好了解决了它,我只是不得不添加一个'。 “;在最后 感谢您的帮助 – 2013-03-04 23:28:48