カスタム投稿タイプのアーカイブを削除する方法


17

has_archiveパラメーターがtrueに設定された「レシピ」というカスタム投稿タイプがあります。mysite.com/recipe/にアクセスすると、投稿されたすべてのレシピの基本的なアーカイブリストと「Recipes」のページタイトルが表示されます。ここまでは順調ですね。

今、私はそのレシピアーカイブページを無効にしようとしています(ただし、個々のレシピリンクは機能し続けます)。最初に考えたのは、has_archivefalseに設定してみることでした。いや。これが行う唯一の違いは、何らかの理由でサイトの名前になるページタイトルです。実際のアーカイブは引き続き表示されます。

実際にそのアーカイブを完全に削除する最良の方法は何ですか?register_post_typeこれを達成するパラメータがありますか、それとも不可能ですか?リダイレクトを含むカスタムページテンプレートの場合ですか?

ありがとう。


1
設定後に書き換えルールをフラッシュしました'has_archive' => falseか?
チップベネット

良い点は@ChipBennett、私はしませんでした!今予想通り:)おかげで、作品
Shellbot

回答:


29

has_archiveパラメーターは、register_post_type()期待どおりに動作します。ただし、設定時に書き換えルールが変更されます。したがって、これをに変更する場合、アーカイブインデックスの表示を完全に削除するには、書き換えルールfalseフラッシュする必要があります


注:これは一度だけ行う必要があります。これを行う簡単な方法は、例えば、設定->パーマリンクにアクセスして、現在の設定を再保存することです。これにより、書き換えルールがフラッシュされます。
ニコ

3
これは実際にアーカイブを無効にするわけではないことに注意してください。それらにアクセスするためのきれいなURLのみを無効にします(mysite.com/recipe/この例では)。アーカイブはまだ存在しmysite.com/?post_type=recipeており、投稿タイプがパブリックにクエリ可能である限りアクセス可能です。
マーク
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.