web-dev-qa-db-ja.com

投稿のパーマリンクでカテゴリベーススラッグを使用する

目標

以下のように私のパーマリンクをフォーマットしたいです。

  • 投稿の場合:somePrefix /%category%/%postname%
  • カテゴリの場合:somePrefix /%category%

どちらの場合もsomePrefixは同じです。

私はこれに大きな逆さまがないことを知っています - それはちょうど私にとって「きれい」に見えます:)。手動でURLを編集したい場合にも便利です。

私が試したこと

カテゴリーベースなし

一つのアプローチは投稿のパーマリンクを/%category%/%postname%/と定義し、プラグインを使ってカテゴリーベースを取り除くことです。残念ながら、これらのプラグインはバグがあるように思われ、使用することをお勧めしません(たとえば Yoast SEO Plugin によって)。

同じカテゴリベース

問題ありません、私は、パーマリンクの中でカテゴリベースをそのまま使うことにしましょう:category_base /%category%/%postname%。これは生成します:

  • 投稿の場合:example.org/category_base/%category%/%postname%
  • カテゴリの場合:example.org/category_base/%category%

これはカテゴリに対して機能しますが、投稿へのリンクは404を生成します。

それで?

それで、これを達成する方法はありますか? Same Category Base ?によって作成されたリンクを適切に処理するための設定、プラグイン、あるいはおそらくWordPressを少しハッキングすることさえあります。

7
Nicolai

私は質問の中でいくつかの重要な詳細を見逃しているかもしれませんが、これは私がこの仕事をするためにしたことです。

Settings -> Permalinks

への固定リンクを設定してください...

/somePrefix/%category%/%postname%/

これはあなたに次のパーマリンクを与えるでしょう...

Blog Page     - domain.com/somePrefix
Category Page - domain.com/somePrefix/currCategory/
Single Page   - domain.com/somePrefix/currCategory/singlePost/

あなたがYoastのようなある種のプラグインをインストールするなら、あなたはあなたのパーマリンクのために "プライマリ"カテゴリを選ぶことができるでしょう。

2
Howdy_McGee