WordPressでループの外にカスタムフィールドを表示する方法

WordPressでループの外にカスタムフィールドを表示したいですか?通常、カスタムフィールドは他の投稿コンテンツやメタデータと一緒にWordPressループ内に表示されます。この記事では、WordPressでループの外にカスタムフィールドを表示する方法を説明します。

WordPressループの外にカスタムフィールドを表示する方法

WordPressのカスタムフィールドとは

カスタムフィールドを使用すると、WordPressの投稿に追加のメタデータを追加し、それを投稿コンテンツと一緒に表示できます。

画面オプションの下にあるカスタムフィールドメタボックスを有効にするだけで、カスタムフィールドを追加できます。また、WordPressでカスタムメタボックスを作成することで、カスタムフィールドのユーザーインターフェースを改善することもできます。

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を自分のカスタムフィールド名に、post IDを自分の投稿またはページのIDに置き換えるのを忘れないでください。

WordPressサイドバーウィジェットのカスタムフィールド

これで全部です。

この記事が、WordPressでループの外にカスタムフィールドを表示する方法を学ぶのに役立ったことを願っています。また、初心者向けWordPressテーマチートシートも参照してください。

この記事が気に入った場合は、WordPressのビデオチュートリアルをご覧ください。YouTubeチャンネルに登録してください。また、TwitterFacebookでもフォローできます。

開示:当社のコンテンツは読者によってサポートされています。これは、当社のリンクの一部をクリックすると、当社が手数料を得る可能性があることを意味します。WPBeginnerがどのように資金提供されているか、それがなぜ重要か、そしてどのように私たちをサポートできるかについては、こちらをご覧ください。当社の編集プロセスはこちらです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

8 CommentsLeave a Reply

  1. 著者のフィールドは、このように追加できますか?複数の著者を持つウェブサイトがあり、記事の著者の名前の下に、常にその人のプロフィール(著者情報)を表示したいと考えています。これはスニペットで可能ですか、それともAdvanced Custom Fieldsプラグインのようなより複雑なものの方が良いでしょうか?私はこれらのフィールドについては初心者で、まだよく理解していません。

    • 共著者がカスタムフィールドに含まれている限り、この方法または高度なカスタムフィールドを使用して著者情報を表示できます。

      管理者

      • 確認ありがとうございます。Advanced Custom Fieldsプラグインをダウンロードし、記事の著者のカスタムフィールドを作成しようとしています。また、これらのフィールドがどのように機能するかをよりよく理解するために、この記事を再度読みました。すべてがうまくいけば幸いです。いずれにしても、この問題について少なくとも少し理解が深まりました。どうもありがとうございました。

  2. こんにちは。

    素晴らしい記事です。いくつかの問題を解決するためにWPBを数回利用しました!

    特定のカテゴリの最新の投稿からカスタムフィールド情報を取得し、それを段落内のインラインテキストとして表示しようとしています。

    これに対応するプラグインはありますか、それともPHP/JavaScriptで実現できますか?

    基本的にWordPressに尋ねたいことは、「todays-tipカテゴリの最新の投稿を取得し、カスタムフィールド「odds」の値を見つけて、このspan内に「odds」を表示してください」ということです。

    ハードコーディングしてページに直接記述するのではなく、段落が編集可能であるため、ショートコードまたはJavaScriptソリューションを好みます。基本的に、ウェブマスターが段落のテキストを変更する可能性がありますが、それでも「オッズ」を特定の場所に表示したい場合があります。このページはxProのドラッグ&ドロップエディターで構築されています。

    • 現在、最近の投稿プラグインのショートコードを使用して、別の段落にタイトルを表示しています。テキストを段落にインライン表示するために、すべてのスタイルを削除しています。少しトリッキーな方法です!

返信する

コメントを残していただきありがとうございます。すべてのコメントは、当社のコメントポリシーに従ってモデレーションされますので、ご了承ください。メールアドレスは公開されません。名前フィールドにキーワードを使用しないでください。個人的で有意義な会話をしましょう。