對於你的第一個問題,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'; ?>
@Danimal喜的頂部叫這個, THX的問題。 我不急,所以你可以給我看片段嗎? – Leyb
我可能誤解了你的問題。看起來你正在調用while循環之外的content()。它需要在裏面。看到我上面的例子。 – Danimal