web-dev-qa-db-ja.com

Wordpress-サブカテゴリアーカイブURLに親カテゴリとサブカテゴリ名を表示

Wordpress category/subcategoryアーカイブURLで問題が発生しています。

たとえば、私はこのアーカイブを表示できるようにしたいと思います:
http://faroutmagazine.co.uk/wp/track-of-the-dayは、親カテゴリをURLに保持し、http://faroutmagazine.co.uk/wp/music/track-of-the-dayにします。

以前は、/music/track-of-the-day URLにアクセスすると「これは恥ずかしい...」404メッセージが表示されていました(WPの管理セクションのカテゴリの下にある[表示]オプションに表示されていたものです)。

これで、管理領域の[表示]リンクに/track-of-the-day URLのみが表示されます。これにより、カテゴリ投稿が表示されますが、親カテゴリをURLに含めたいです。

functions.phpファイル、またはこれを実現するために追加できるプラグインにできることはありますか?このサイトには複数のサブカテゴリアーカイブがあり、それらにはすべてURLの親カテゴリが含まれている必要があります。

***更新:私は実際にすべてを別の方法で設定しました。ページを使用し、時間がかかりすぎるため、ページにカテゴリアーカイブを表示しています。回答ありがとうございます。パーマリンク構造が正しくないため、%category%/%postname%を使用するように言われている人-はい、これはPOSTのURLでは機能しますが、実際に問題であったサブカテゴリのアーカイブカテゴリでは機能しません誰かが答えを提供できればそれはありがたいですが、これは理解しようとするのに時間がかかりすぎていたので、現在この回避策を使用しています。

10
rossautomatica

これは、エントリを編集するときに、適切なオプションのチェックボックスからカテゴリとサブカテゴリを選択したために発生します。すべてのエントリでサブカテゴリボックスのみを選択すると、ネストされたURLが表示されます。

18
Peter

これを実現するには、パーマリンクに変更を加える必要があります

Settings-> Permalinksに移動し、次にカスタム構造を選択して、フィールドでこの構文を使用します "/%category%/%postname%/"

設定を保存すると、パーマリンクでカテゴリ名を使用して投稿のURLを確認できます

それが役に立てば幸い :)

5
Maruti Mohanty

ワードプレスでは、実際に階層的なサブカテゴリアーカイブのパーマリンクがデフォルトです。

たとえば、設定[permalinks]で[かなりのパーマリンク]構造を選択している場合(/%postname%など)、カテゴリとサブカテゴリのアーカイブURLのデフォルトは次のようになります:yourdomain.com/category-base/category/sub-category/sub-sub-category

最近のWPプロジェクトで同様の問題が発生しましたが、カテゴリとタグベースを削除するために WP No Base Permalink というプラグインを使用していましたアーカイブパーマリンクのスラッグプラグインを無効にすると、カテゴリ階層が突然アーカイブパーマリンクに戻りました(幸い、このプロジェクトはまだ開発中でしたが、そうでなければ、大きな404問題があったでしょう)。

サブ/カテゴリアーカイブURLの階層も保持する、カテゴリ/タグベースのスラッグを削除するための別のプラグインをまだ見つけていない/テストしていませんが、現在のプロジェクトではその機能は必要ないことがわかりました。

代わりに、ブログの分類法を他の分類法と区別するために、標準のカテゴリとタグに基本スラッグblog-articlesblog-tagsを使用しています。次に、プラグイン Types を使用して、カスタム投稿タイプとその投稿タイプのカスタム分類法を作成します。 Typesプラグインの詳細設定には、カスタム分類を作成するときに階層分類URLをtrueまたはfalseに設定するオプションがあります。

最後に、私は Remove Taxonomy Base Slug というプラグインを見つけました。これは、分類アーカイブのURLのベーススラグからデフォルトの分類用語を効果的に削除します。そして、ありがたいことに、これは階層的なサブ/カテゴリのURL OR標準タグとカテゴリのベーススラグ)に干渉しません。

したがって、私のブログのカテゴリ/タグは次のようになります。

yourdomain.com/blog-articles/category/sub-category/またはyourdomain.com/blog-tags/tag/

そして、私のカスタム投稿タイプのカテゴリ/タグは次のようになります:

yourdomain.com/category/sub-category/またはyourdomain.com/tag/

ふew!

これが役に立てば幸いです!

3
user2655393

「設定」->「パーマリンク」->「カテゴリベース」を「%category%」に設定すると、必要なものが得られます。 WP docによると:

ネストされたサブカテゴリは、URIでネストされたディレクトリとして表示されます

http://codex.wordpress.org/Using_Permalinks を参照してください。

2
gwc

分類法を定義するときは、階層値をtrueに設定する必要があります。

'rewrite' => array('slug' => 'mySlug', 'hierarchical' => true),

次に、サブカテゴリがある場合、URLは次のように表示されます。 http://example.com/taxonomy/parentCategory/subCategory/

私はこの中傷をここで見つけました:

https://wordpress.stackexchange.com/questions/155319/how-to-include-parent-terms-in-hierarchical-taxonomy-urls

1
Amin Behravesh

パーマリンク設定は/%category%/%postname%/のようにする必要があります。

1
Shiva

カスタムパーマリンク設定を%postname%としてのみ使用する場合、URLは.../category/subcategoryの形式になります。

0
Desh

WordPress plugin to remove 'category' from url http://wordpress.org/plugins/wp-no-category-base/ を使用して、マルチからの指示

0
Manish