カスタムフィールドで入力した値をアーカイブページで表示させる方法について

0
いいねをした人: 居ません
9件の投稿を表示中 - 1 - 9件目 (全9件中)
  • 投稿者
    投稿
  • #61969
    snow_coding
    閲覧者
    4

    トピックを新しく立てる方は次の項目も記述してください(要望トピックの場合は不要です)。

    【お使いの Snow Monkey のバージョン】バージョン: 11.7.6
    【お使いのブラウザ】chrome
    【当該サイトのURL】(公開できる場合は書いていただいたほうがスムーズです)

    ===

    Advanced  Customed Fieldsで実装したカスタムフィールドを、出力するところまでは
    できましたが、アーカイブページでもカスタムフィールドの値を表示させる方法がわかりません。

    template-parts>archive>entry>archive.phpをコピーして、
    archive-menu.phpというファイルを作成しましたが、その先どうしたらよいかわからず質問しました。

     

    custom post type UI でアーカイブページを表示させると、以下のように表示されます。今1つしか入れていませんが、商品を追加していくと、タイトルの下にカスタムフィールドの値も表示されるようにするにはどうしたらいいでしょうか。

    商品名:○○

    価格:○○円

    というように表示を希望しています。

     

     

    すみませんが、よろしくお願いいたします。

    0
    いいねをした人: 居ません
    #61972
    Olein_jp
    参加者
    545

    template-parts>archive>entry>archive.phpをコピーして、
    archive-menu.phpというファイルを作成しましたが、その先どうしたらよいかわからず質問しました。

    恐らく上記の場所にはarchive.phpは存在しないと思います。template-parts/archive/entry/content.phpなどでしょうか?

    また、テンプレートをコピーしてMy Snow Monkeyや子テーマで上書きする場合には、親テーマに存在するファイル名と同じファイル名でないと上書きされません。

    ですので、例えば上記のようにtemplate-parts/archive/entry/content.phpのテンプレートを上書きしたいのであれば、同じ階層で同じファイル名のテンプレートファイルを用意する必要があります。

    また、

    custom post type UI でアーカイブページを表示させると、以下のように表示されます。今1つしか入れていませんが、商品を追加していくと、タイトルの下にカスタムフィールドの値も表示されるようにするにはどうしたらいいでしょうか。

    Custom Post Type UIはカスタム投稿タイプを用意するプラグインですが、表示をさせたいアーカイブ情報が表示されるページに正常にアクセスできていますでしょうか?

    Show Current Templatesなどを活用して、まずは意図したアーカイブページが表示されているか、そこに読み込まれているテンプレートなどから確認してみてください。

    以上、ご確認ください。

    0
    いいねをした人: 居ません
    #61984
    snow_coding
    閲覧者
    4

    ご返信どうもありがとうございます。

    確かに、階層が間違っており、archive.phpと同階層にarchive-menu.php を作成したところ、アーカイブページがarchive-menu.phpで表示されました。内容は以下の通りです。

    <?php
    /**
     * @package snow-monkey
     * @author inc2734
     * @license GPL-2.0+
     * @version 5.0.0
     */
    
    use Framework\Controller\Controller;
    
    Controller::layout( get_theme_mod( 'archive-page-layout' ) );
    if ( have_posts() ) {
    	Controller::render( 'archive', get_post_type() );
    } else {
    	Controller::render( 'none' );
    }

    こちらのページを編集して、カスタムフィールドの値を出力したいのですが、方法を教えていただけますでしょうか。

    初心者で申し訳ございません。

    よろしくお願いいたします。

    0
    いいねをした人: 居ません
    #61997
    Olein_jp
    参加者
    545

    確かに、階層が間違っており、archive.phpと同階層にarchive-menu.php を作成したところ、アーカイブページがarchive-menu.phpで表示されました。内容は以下の通りです。

    カスタム投稿タイプのスラッグはmenuということですかね?それでarchive-menu.phpを作られたという流れとお察ししました。

    実際にこちらでテストをしたわけではないのですが、カスタム投稿タイプmenuの一覧ページにて、冒頭添付画像のようにタイトル(画像では「商品1」)とあり、その付近(タイトルの下とか?)にカスタムフィールド値を出力されたいのであれば、archive.phpではなくtemplate-parts/loop/entry-summary/content/content.php辺りを用意して、カスタム投稿タイプのアーカイブ表示時という条件分岐を入れて、カスタムフィールド出力部分を作成するというような形で実現できないでしょうか?

    ちなみにですが、カスタム投稿タイプのアーカイブかどうかの条件分岐にはis_post_type_archive()が利用できるかと思います。

    参考になれば幸いです。

    追伸

    初心者で申し訳ございません。

    全く悪いことではありませんよ!僕もまだまだ初心者です。

    2
    いいねをした人: 居ません
    #62009
    キタジマ タカシ
    参加者
    2253

    @オレインさん

    template-parts/loop/entry-summary/content/content-カスタム投稿タイプ名.php、今回でいえば template-parts/loop/entry-summary/content/content-menu.php をつくれば、menu のときはそのテンプレートが呼ばれるようになります!

    0
    いいねをした人: 居ません
    #62012
    キタジマ タカシ
    参加者
    2253
    #62022
    snow_coding
    閲覧者
    4

    Olein_jpさん、キタジマさん、ありがとうございました!

     

    希望通りに表示できました!

    1人では絶対にたどり着けなかったので、本当に助かりました。

    ありがとうございました。

    1
    いいねをした人: 居ません
    #62023
    Olein_jp
    参加者
    545

    @キタジマさん

    おおおー!!そうなんですね!!であれば分岐すら必要ない…!!すごい!!素敵!!!

    @snow_coding さん

    ご希望通りできたとのことで良かったですー!僕も一つ勉強することができました!ありがとうございます!!

    1
    いいねをした人: 居ません
    #62047
    キタジマ タカシ
    参加者
    2253

    解決済みということでトピック閉じます!

    0
    いいねをした人: 居ません
9件の投稿を表示中 - 1 - 9件目 (全9件中)
  • トピック「カスタムフィールドで入力した値をアーカイブページで表示させる方法について」には新しい返信をつけることはできません。

ドキュメント

Snow Monkey の設定方法やマニュアルを掲載しています。

ドキュメント

フォーラム

Snow Monkey の使い方やカスタマイズについてのご質問・ご要望等はサポートフォーラムで行っています。サポートフォーラムは誰でも閲覧できますが、書き込みできるのは Snow Monkey 購入者のみとなります。

サポートフォーラム

よくあるご質問

Snow Monkey のサービスについて不明な点がある場合は、まずはよくあるご質問をご確認ください。

よくあるご質問

お問い合わせ

よくあるご質問を見ても解決しなかった場合、試用版の申請については問い合わせフォームからお願いいたします。

お問い合わせ

Snow Monkey は Gutenberg ブロックエディターに対応した 100%GPL の WordPress テーマです。拡張性を意識した開発をおこなっており、カスタマイザーとブロックでスピーディーにサイトを立ち上げるだけでなく、CSS やフックを駆使した高度なカスタマイズにも柔軟に対応できます。