2017-06-15 47 views
0

我創建了將用於顯示與其他人不同的第一篇文章的設計。這不是那麼容易,因爲第一篇文章需要在他自己的div id中,這與其他文章完全不同。如何顯示與其他帖子不同的第一篇文章?

這是我目前在WordPress的PHP中使用的代碼:

<?php get_header(); ?> 

<!-- Begin Content --> 

<div id="content-wide"> 
    <div class="post"> 

    <div class="imgwide" style="background: linear-gradient(to bottom, rgba(0,0,0,0) 60%, rgba(0,0,0,0.8)), url(<?php echo catch_that_image() ?>); background-repeat: no-repeat; background-size: 100%; background-position: center;"> 

     <div class="p-heading"> 
     <h1> 
      <a href="<?php the_permalink() ?>" title="<?php the_title_attribute(); ?>"> 
      <?php the_title(); ?> 
      </a> 
     </h1> 
     <div class="p-content"> 
      Excerpt text of the first post goes here but php the_excerpt doesnt work for this wide paragraph 
     </div> 
     </div> 

    </div> 

    </div> 
</div> 

<div id="content-a"> 

    <?php if (have_posts()) : ?> 
    <?php while (have_posts()) : the_post(); ?> 
    <div class="post"> 
    <div class="imgdiv"><a href="<?php the_permalink() ?>"><img src="<?php echo catch_that_image() ?>" width="250"></a></div> 
    <div class="p-heading"> 
     <h1> 
     <a href="<?php the_permalink() ?>" title="<?php the_title_attribute(); ?>"> 
      <?php the_title(); ?> 
     </a> 
     </h1> 
    </div> 

    <div class="p-content"> 
     <?php the_excerpt(); ?> 
    </div> 

    <div class="p-info"> 
     <?php the_time('j.m.Y') ?> | 
     <?php the_category(', '); ?> | <img src="http://www.virmodrosti.com/wp-content/uploads/comments.png" alt="Komentarji" width="26" height="12"> 
     <?php $totalcomments = get_comments_number(); echo $totalcomments; ?> 
    </div> 

    </div> 

    <?php endwhile; ?> 

,這裏是我的網站網址http://www.virmodrosti.com/zdravje/ 所有我想要的是第一個帖子未顯示兩次,但只是移動到廣角後期設計。大帖子在內容範圍內。讓我知道如何做到這一點。謝謝。

+1

你只需要一個簡單的'if'聲明 – cmorrissey

+1

我不熟悉與WordPress以及所涉及的PHP方法,但它似乎是,如果你可以嘗試沿着線增加一些' <?php if(this_post!= first_post):?> [POST CONTENTS HERE] <?php endif; ?''在你的'while'循環中。 (換句話說,像@cmorrissey建議的那樣添加'if'語句) –

+0

另請參閱:https://stackoverflow.com/questions/18357231/if-first-post-style-differently-wordpress –

回答

1

嘗試添加一個從零開始的計數器並在while循環中增加它,然後使用if語句檢查計數器的值是否爲零顯示第一個帖子和其他帖子。

EDITED

<?php $counter = 0; ?> 
    <?php while (have_posts()) : the_post(); ?> 
     <?php if($counter == 0) { ?> 
      <div id="content-wide"> 
       <div class="post"> 
        <div class="imgwide" style="background: linear-gradient(to bottom, rgba(0,0,0,0) 60%, rgba(0,0,0,0.8)), url(<?php echo catch_that_image(); ?>); background-repeat: no-repeat; background-size: 100%; background-position: center;"> 
         <div class="p-heading"> 
          <h1><a href="<?php the_permalink() ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h1> 
          <div class="p-content"> 
           <?php the_excerpt(); ?> 
          </div> 
         </div> 
        </div> 
       </div> 
      </div> 
     <?php } ?> 
     <?php if($counter > 0) { ?> 
      <div class="post"> 
       <div class="imgdiv"><a href="<?php the_permalink() ?>"><img src="<?php echo catch_that_image() ?>" width="250"></a></div> 
       <div class="p-heading"> 
        <h1><a href="<?php the_permalink() ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h1></div> 
       <div class="p-content"> 
        <?php the_excerpt(); ?> 
       </div> 
       <div class="p-info"> 
        <?php the_time('j.m.Y') ?> | 
        <?php the_category(', '); ?> | <img src="http://www.virmodrosti.com/wp-content/uploads/comments.png" alt="Komentarji" width="26" height="12"> 
        <?php $totalcomments = get_comments_number(); echo $totalcomments; ?> 
       </div> 
      </div> 
     <?php } ?> 
     <?php $counter ++; ?> 
    <?php endwhile; ?> 
+0

我試過了,收到空白頁面,不知道爲什麼。我完全按照規定進行。我不知道是否兩個不同的div ID的第一篇文章和其他帖子相互爭鬥,或者因爲PHP語句位於div id之前,沒有html條目或東西。即使我添加了另一個ID包裝器,以便代碼位於包裝器中,它不會顯示第一個帖子,但只會顯示在一起。沒有這個入口'<?php if(have_posts()):?>該頁面不加載,只返回空白頁面。 – Techuser

+0

在if語句中包含了你的html嗎? – PenAndPapers

+0

是的,它們包含在archive.php中,它適用於virmodrosti.com/zdravje/ – Techuser

相關問題