如何在 WordPress 中的迴圈以外顯示自定義欄位

WPressize Me

06/08/2024

什麼是 WordPress 中的自定義欄位

自定義欄位允許您將額外的元數據添加到您的 WordPress 文章中,然後與您的文章內容一起顯示。您可以通過在「屏幕選項」下啟用自定義欄位元框來添加自定義欄位。您還可以在 WordPress 中創建自定義元框,為自定義欄位提供更好的用戶界面。

有關更多詳細信息,請參閱我們的WordPress 自定義欄位初學者指南。由於自定義欄位向文章添加元數據,這些數據可以輕鬆地與其他文章內容一起顯示在 WordPress 迴圈內。不過,有時您可能想在迴圈外顯示它們,例如在側邊欄小工具中。這時候事情就變得有些棘手了。

在 WordPress 迴圈以外顯示自定義欄位數據

我們實際上要向您展示如何在不影響主迴圈的情況下,在 WordPress 主題中使用多個迴圈來顯示自定義欄位數據。

這篇文章需要您將代碼添加到您的 WordPress 主題文件中。如果您之前沒有這樣做過,那麼您可以參考我們的指南,學習如何在 WordPress 中複製和粘貼代碼。

您需要將以下代碼添加到您的主題文件中您希望顯示自定義欄位數據的地方。

<?php
global $wp_query;
$postid = $wp_query->post->ID;
echo get_post_meta($postid, 'Your-Custom-Field', true);
wp_reset_query();
?>

該代碼只是加載全局變量 $wp_query 來獲取文章 ID。然後,它使用 get_post_meta() 函數來提取和輸出您的自定義欄位數據。不要忘記將 Your-Custom-Field 替換為您的實際自定義欄位。

您可以自定義代碼以匹配您的需求。您還可以使用其他查詢參數來提取和顯示不同文章和頁面的自定義欄位數據。

讓我們來看看另一個例子。這個例子使用 WP_Query 類,這是一種在您的 WordPress 主題文件中使用多個迴圈的更好且更靈活的方法。

只需將這段代碼添加到您的主題或子主題中您希望顯示自定義欄位的地方。

$args = array ( 
// Post or Page ID
'p' => 231,
);

// The Query
$the_query = new WP_Query( $args );

// The Loop
if ( $the_query->have_posts() ) {
while ( $the_query->have_posts() ) {
$the_query->the_post();
echo get_post_meta( get_the_ID(), 'Mood', true);
}

/* Restore original Post Data */
wp_reset_postdata();
} else {
echo 'Nothing found';
}

不要忘記將 Mood 替換為您的自定義欄位名稱,並將文章 ID 替換為您自己的文章或頁面 ID。

就是這樣。

我們希望這篇文章能幫助您了解如何在 WordPress 迴圈以外顯示自定義欄位。您可能還想查看我們的初學者 WordPress 主題備忘單。

如果您喜歡這篇文章,請訂閱我們的 YouTube 頻道,觀看 WordPress 視頻教程。您也可以在 Twitter 和 Facebook 上找到我們。



Related Posts

  • 2024-07-20
  • WordPress 主题

您是否想在 WordPress 中為不同頁面使用多個佈景主題?可以自訂網頁的外觀和布局,為文章、頁面和部分區域建立模板。但是如果您想為網站的某些部分或頁面使用完全不同的佈景主題呢?本文將指導您如何在 WordPress 中為頁面使用多個佈景主題。

閱讀更多
  • 2024-07-19
  • WordPress 主题

您是否想在 WordPress 網站上添加回頂效果?這種效果在頁面較長時非常有用,可以讓用戶輕鬆返回頁面頂部,提升網站的用戶體驗。本文將教您如何使用 jQuery 和插件在 WordPress 中添加平滑回頂效果。

閱讀更多
  • 2024-07-13
  • WordPress 主题

您是否想在 WordPress 中創建一個自定義頁面?自定義頁面允許您使用與網站其餘部分不同的佈局。許多 WordPress 網站使用自定義頁面佈局來建立銷售頁面、登陸頁面、網路研討會頁面等。在這篇文章中,我們將向您展示如何輕鬆地在 WordPress 中創建自定義頁面。

閱讀更多

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
>