-
投稿者投稿
-
2020年12月1日 12:19 PM #61969
トピックを新しく立てる方は次の項目も記述してください(要望トピックの場合は不要です)。
【お使いの 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いいねをした人: 居ません2020年12月1日 12:44 PM #61972template-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いいねをした人: 居ません2020年12月1日 3:47 PM #61984ご返信どうもありがとうございます。
確かに、階層が間違っており、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いいねをした人: 居ません2020年12月1日 8:02 PM #61997確かに、階層が間違っており、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いいねをした人: 居ません2020年12月2日 12:14 AM #62009@オレインさん
template-parts/loop/entry-summary/content/content-カスタム投稿タイプ名.php
、今回でいえばtemplate-parts/loop/entry-summary/content/content-menu.php
をつくれば、menu のときはそのテンプレートが呼ばれるようになります!♥ 0いいねをした人: 居ません2020年12月2日 12:18 AM #62012@snow_coding さん
ACF であれば、下記のページで説明してある関数を使うことでデータの表示ができると思います!
♥ 0いいねをした人: 居ません2020年12月2日 2:02 AM #62022Olein_jpさん、キタジマさん、ありがとうございました!
希望通りに表示できました!
1人では絶対にたどり着けなかったので、本当に助かりました。
ありがとうございました。
♥ 1いいねをした人: 居ません2020年12月2日 5:54 AM #62023@キタジマさん
おおおー!!そうなんですね!!であれば分岐すら必要ない…!!すごい!!素敵!!!
@snow_coding さん
ご希望通りできたとのことで良かったですー!僕も一つ勉強することができました!ありがとうございます!!
♥ 1いいねをした人: 居ません2020年12月2日 12:49 PM #62047解決済みということでトピック閉じます!
♥ 0いいねをした人: 居ません -
投稿者投稿
- トピック「カスタムフィールドで入力した値をアーカイブページで表示させる方法について」には新しい返信をつけることはできません。