最近、ある読者からWordPressのナビゲーションメニューにカスタム投稿タイプのアーカイブページへのリンクを追加できないかという質問を受けました。WordPressのアーカイブページは、特定の投稿タイプ、カテゴリー、タグの下にあるすべての投稿のリストを表示します。この投稿では、WordPressのナビゲーションメニューに投稿タイプのアーカイブを追加する方法を紹介します。
WordPressのカスタム投稿タイプアーカイブ
WordPressでは、投稿タイプや タクソノミー(カテゴリーやタグなど)のエントリーのリストを「アーカイブ」というキーワードで表します。
カスタム投稿タイプでアーカイブが有効化されている場合、それらをサイトに表示することができます。通常、カスタム投稿タイプのアーカイブページのURLはこのフォーマットになります:
http://example.com/post-type-slug/
投稿タイプのスラッグはカスタム投稿タイプの素敵な名前です。
例えば、私たちは’Deals’というカスタム投稿タイプを持っていて、このようなURLでアーカイブページを表示することができます:
https://www.wpbeginner.com/ja/deals/
カスタム投稿タイプのアーカイブページへのリンクをサイトのナビゲーションメニューに設置することができます。これにより、ユーザーはその投稿タイプで投稿された過去のすべてのエントリーを個別ページで見ることができます。
それでは、WordPressのナビゲーションメニューにカスタム投稿タイプのアーカイブページへのリンクを追加する方法を見ていきましょう。
ナビゲーションメニューにカスタム投稿タイプのアーカイブページへのリンクを追加する
まず、外観 ” メニューページにアクセスします。左のカラムにカスタム投稿タイプのタブがあります。
カスタム投稿タイプの名前をクリックして展開し、「すべて表示」タブをクリックします。
投稿タイプのアーカイブのオプションが表示されます。その横にあるボックスにチェックを入れて、「メニューに追加」ボタンをクリックします。
カスタム投稿タイプのアーカイブが右カラムにメニュー項目として表示されます。
初期設定では、カスタム投稿タイプの名前とアーカイブという単語がリンクラベルに使用されます。
これをもっと簡単なものに変更したいかもしれません。メニュー項目をクリックして編集し、ナビゲーションラベルを変更してください。
メニューの保存ボタンをクリックして変更を保存することを忘れないでください。
これであなたのサイトにアクセスすると、ナビゲーションメニューにカスタム投稿タイプのアーカイブリンクが表示されます。
投稿やページと同様に、投稿タイプの個別エントリーをナビゲーションメニューに追加することもできます。
エントリーを選択し、メニューに追加ボタンをクリックするだけです。
変更を保存するには、メニューの保存ボタンをクリックするのを忘れないでください。
カスタム投稿タイプがメニュー画面に外観されません。
カスタム投稿タイプが外観 ” メニューページに表示されるには、いくつかの必須条件に一致する必要があります。
まず、カスタム投稿タイプのアーカイブページが存在することを確認する必要があります。一般的には以下のようなURLです:
http://example.com/movies/
example.comを自分のドメイン名に、moviesを投稿タイプに置き換えてください。
このページであなたの投稿タイプのエントリーが表示される場合、あなたの投稿タイプはアーカイブをサポートしていますが、他の必須要件はサポートしていないことを意味します。
良いニュースは、カスタム投稿タイプのアーカイブページをカスタムリンクとして追加できることです。
外観 ” メニューページにアクセスし、「カスタムリンク」タブをクリックして展開します。
URLフィールドにカスタム投稿タイプのアーカイブページのURLを入力し、リンクフィールドに表示したいラベルを追加します。
次に、メニューに追加ボタンをクリックすると、右カラムにカスタムリンクが表示されます。
メニューの保存ボタンをクリックして、変更を保存することができます。
この投稿が、WordPressのナビゲーションメニューに投稿タイプのアーカイブを追加する方法を学ぶのにお役に立てば幸いです。また、WordPressカスタム投稿タイプのチュートリアルで最も便利な12個のリストもご覧ください。
この投稿が気に入った場合は、WordPressの動画チュートリアルをYouTubeチャンネルに登録してください。Twitterや Facebookでもご覧いただけます。
Vale
Hello,
I am kind of confused, didn’t we supposed to use our-category.php template and our-taxonomy.php archive pages? Or in this case we don’t need to create those custotom php loop/templates?
Thank you
Jordan
Is there a way to do this but to carry over a parent in the URL? for example.. I create a CPT called /videos/. I add it to the menu under “our-projects”… so the url ends up being /our-projects/videos/
Thanks!
ratnesh
how to add posts in different pages and similar posts to be displayed inhome page
Roland
“Custom post types need to match some requirements in order to be displayed on Appearance » Menus page.”
What requirements are these then?
WPBeginner Support
Hi Roland,
They should be publicly queryable, should appear in navigation menu, and has_archive. When creating your post type by manually adding code these options can be set in the arguments. Please see our guide on how to create a custom post type in WordPress for more detailed instructions.
管理者
Radley Anaya
Also note – if you change your custom post type you will likely need to update your permalinks.
Amani Joseph
Hi am a small website owner in Tanzania, wpbeginner help me from the day i start blogging to date. Am proud of my self to find this site and i will recommend this site to any WordPress beginner even pros, Today i have one Question i didn’t know where to ask and i think this is opportunity for you guys you can create the platform where we can i ask question about WordPress and other people or even you guys you can ask, This give the chance to find something to write to your blog. That say’d my question is i want to run something like deals like you do on the Deals section on this blog, can you recommend any plugin to do the work.
WPBeginner Support
Hi Amani,
Thanks for the kind words. We are glad you find WPBeginner useful. As for your question, please take a look at our guide on how to create a coupon site in WordPress. Scroll down to ‘Adding a coupons section to an existing WordPress site’ section.
管理者