2016-07-07 90 views
0

在頁面上特定的文章中,我想在我的wordpress主題的顯示頁面上的特定職位。在這種情況下,我試圖在主頁上顯示該帖子,並且我已經嘗試了很多以至少顯示標題,但是我得到的只是頁面的標題,而不是帖子本身。如何顯示在我的wordpress主題

我試過the_titleget_the_title()但魔術並沒有發生。

Example

這裏談到有關我的問題的代碼。

home.php

<?php 

    if (have_posts()) : 


     /* Start the Loop */ 
     while (have_posts()) : the_post();?> 


    <?php 
      /* 
      * Include the Post-Format-specific template for the content. 
      * If you want to override this in a child theme, then include a file 
      * called content-___.php (where ___ is the Post Format name) and that will be used instead. 
      */ 
      // if (has_post_format('video')) { 
      // echo 'this is the video format'; 
      // } 
      get_template_part('template-parts/content-chat', get_post_format('chat')); 

     endwhile; 


    else : 

     // get_template_part('template-parts/content', 'none'); 

    endif; ?> 

並調用文件(它被調用正確的文件,雙重檢查)

<article id="post-<?php the_ID(); ?>" <?php post_class(); ?> > 

    <a href="<?php the_permalink(); ?>"><h2><?php the_title(); ?></h2></a> 
    <?php the_content(); 
     echo get_post_format(); 
    ?> 


</article><!-- #post-## --> 

總之,問題是:

1)爲什麼顯示頁面的標題?
2)如何在頁面中正確顯示這種文章格式?

回答

0

對於你的第一個問題,wp根據query_posts()獲取主頁的標題,這使得wordpress如此動態,你可以實際檢查頁面或類別id,然後選擇查詢帖子顯示什麼。由於您的代碼中沒有query_posts,因此wp默認爲您的主頁的當前帖子ID。

對於你的第二個,我有一段代碼,但它是在家裏,你可以看看它在這裏 https://developer.wordpress.org/reference/functions/query_posts/

好了,所以這裏是片段。對不起,我一直在度假。

首先你要確定你的主頁的ID,或者您可以使用的主頁功能。如果你走的是前一條路線,那麼你只需要到後端到你的主頁並用鼠標將它懸停在上面。主頁應顯示在頁面底部的鏈接工具提示中。這將是像post = 5這個數字是你需要的。 接下來,我將爲您想在首頁上顯示的帖子創建一個類別,並從後端的類別頁面中獲取該ID。同樣它會像TAG_ID = 12

<?php 

      $currpage = $post -> ID; 
      if($currpage == 5) { 
       query_posts('showposts=1&cat=12'); 
      } 
      while (have_posts()): the_post(); 

你可以有一個頁面這樣的多個職位,事實上你可以在該網頁上你的整個循環然後在它動態地填充其下的其他職位就像這個例子: http://testex-ndt.com/products/ect-products/頂部是工作循環的頁面,底部(褒獎)是分配給特定類別的帖子,此處的showposts設置爲3,並將顯示最近三個帖子的摘錄。這是我過去做過的一個網站。

你可能要記住的另一件事是頁面模板,如果你想要一個頁面正常工作的一種方式,並且希望其他類型的工作另一個頁面,你將不得不考慮的模板。

這裏是該頁面的全部代碼。

<?php 
/* 
Template Name:Main Product 
*/ 
?> 
<?php get_header(); ?><!-- BANNER is part of main homepage only --> 
    <?php if (have_posts()) : ?> 
     <?php while (have_posts()): the_post(); ?> 
     <?php $postName = get_the_title($post); ?> 
    <!-- title link dynamic --> 
     <?php edit_post_link('Edit this item','',' | '); ?> 
     <?php the_content('Continue Reading'); ?> 
     <?php posts_nav_link(); ?> 
     <?php endwhile; ?> 
     <?php else : ?> 
     <div class="w3-col text"> 
     <h2>Not Found</h2> 
     <p><?php _e("Sorry, no posts or pages could be found. Why not search for what you were trying to find?"); ?></p> 
     <?php get_search_form(); ?> 
     </div> 
     <?php endif; ?> 

    <!-- insert testimonial here --> 
    <section class="w3-row cl testimonials"> 


    <!-- make code for query based on the page, then get the top three testimonials in excerpt form This is commented out because I did it with a function I attached to the header I will show below 
     $currpage = $post -> ID; 
     if($currpage == xx){ 
      $cat = x; 
     } 
      --> 

     <h2>Testimonials for <?php echo $postName; ?></h2> 
      <?php 
      $currpage = $post -> ID; 
      $cat = testimonial($currpage); //here is the function 
      query_posts('showposts=3&cat=' .$cat); ?> 
     <?php while (have_posts()): the_post(); ?> 
     <div class="w3-col excerpt" style="width:30%;"> 
     <?php the_excerpt(''); ?> 
      </div> 
     <?php endwhile; 
     wp_reset_query(); // DO THIS EVERYTIME YOU ALTER QUERY_POSTS 

     ?> 
    </section> 


    <!-- /content float --> 
    </div> 
<!-- /content --> 
</div> 

因此,函數被設置爲一個單獨的PHP文件,所以我可以模塊化地改變它。我所謂的文件category_help.php

<?php 
/*This particular block of code is only for determining what category  of testimonial is allowed in a post. */ 

function testimonial($myPageID){ 
    //services (all cats) 
    $id = "-15,-14,-13"; 
    //Products 
    //lfet 
    if($myPageID == 18) $id = 2; 
    //bfet 
    if($myPageID == 22) $id = 4; 
    //rfet 
    if($myPageID == 20) $id = 3; 
    //ect 
    if($myPageID == 24) $id = 5; 
    //ultrasound 
    if($myPageID == 26) $id = 8; 
    return $id; 
} 
?> 

然後我的header.php

<?php require 'category_help.php'; ?> 
+0

@Danimal喜的頂部叫這個, THX的問題。 我不急,所以你可以給我看片段嗎? – Leyb

+0

我可能誤解了你的問題。看起來你正在調用while循環之外的content()。它需要在裏面。看到我上面的例子。 – Danimal

相關問題