web-dev-qa-db-ja.com

WordPressの「フック」を利用してカスタム投稿タイプにACF [フィールド]を表示する方法

小質問:

i)function.phpとstyle.css以外のどのファイル/テンプレートを子テーマフォルダにコピーする必要がありますか?

ii)どんなアクション/フィルタ/を使うべきで、どこにこのコードを挿入すべきですか?

謝罪、次のことが不正確に表現されている場合、私はWP初心者です。

私は最近、私の既存のテーマを更新する目的で、Customizr 4.0.8(子テーマとして)をLocalhostにインストールしました。フロントエンドにカスタムフィールドのデータを表示しようとしています。Advanced Custom Fields Pro(ACF Pro)を使用して構築されています。データは、2つの単一カスタム投稿タイプのメインコンテンツ領域内に配置する必要があります。 'ビデオ'と 'ワークショップ'

たとえば、 'Workshops'ポストタイプの現在の本番サイト http://www.custombike.cc では、single-workshop.phpを使用してカスタムフィールドのデータをエコーし​​、それに応じてスタイルを設定しました。

試した内容

私は、Customizrの親テーマのindex.phpからコードをコピーして、(Child Theme)の 'single-workshop.php'に貼り付けてから、コードのさまざまな箇所にACFコードを挿入しました。ペーストビンリンクACF Proコード - Customizr子テーマ https://Pastebin.com/TGf7prZg )を参照してください。

私の調査によると、Customizrはindex.phpを使ってさまざまなテンプレートを使ってコンテンツを表示しています。フック(アクション/フィルタ)について読み、その概念を理解しましたが、その手掛かりがありません。どのコード、どこでどのように実装するか。

どうぞよろしくお願いします。

読んでくれてありがとう。

1
Nate

まず、カスタムフィールドグループを表示しようとしている投稿タイプに割り当ててから、既に行ったようにその投稿タイプテンプレートでそれらを呼び出します。テンプレート部分には、parentテーマからsingle.phpをコピーする必要があります。

編集:

Cutomizrテーマの場合は、ファイル内の子テーマを変更する必要があります。

customizr\templates\parts\content\singular\post_content.php

ただ置く

    <?php $mymetafield = get_field( "test" ); ?>
    <p><?php echo $mymetafield; ?></p>

メタフィールドを表示したい場所ならどこでも。

2
Piyush Rawat