質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

2回答

2491閲覧

Wordpressでカスタム投稿タイプとカスタムタクソノミーのディレクトリの親子関係を正しく設計したい

gamips

総合スコア60

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

0クリップ

投稿2020/01/10 06:24

Wordpressのカスタム投稿タイプ、カスタムタクソノミーのディレクトリ構造を以下のように正しいネスト構造にしたいと思っていますが、上手く動いてくれない状況です。

  • カスタム投稿タイプ

http://localhost/(投稿タイプ)/(ターム名)/(投稿名)/
例 : http://localhost/solution/security/norton/

  • カスタムタクソノミー

http://localhost/(投稿タイプ)/(ターム名)/
例 : http://localhost/solution/security/

  • アーカイブ(一覧ページ)

http://localhost/(投稿タイプ)/
例 : http://localhost/solution/

問題点

カスタムタクソノミーにrewrite_slug: .をいれると、カスタムタクソノミーページが404エラーになってしまいます。
カスタム投稿タイプ、アーカイブは正常に表示されています。

現在の設定

Custom Post Type UI

カスタム投稿タイプの設定 (テンプレート:single-solution.php)

name: solution label: ソリューション singular_label: ソリューション description: "" public: true publicly_queryable: true show_ui: true show_in_nav_menus: true delete_with_user: false show_in_rest: true rest_base: "" rest_controller_class: "" has_archive: true has_archive_string: "" exclude_from_search: false capability_type: post hierarchical: false rewrite: true rewrite_slug: "" rewrite_withfront: false query_var: true query_var_slug: "" menu_position: 5 show_in_menu: true show_in_menu_string: "" menu_icon: "" custom_supports: ""

カスタムタクソノミーの設定 (テンプレート:taxonomy-solution_category.php)

name: solution_category label: カテゴリー singular_label: カテゴリー description: "" public: true publicly_queryable: true hierarchical: true show_ui: true show_in_menu: true show_in_nav_menus: true query_var: true query_var_slug: "" rewrite: true rewrite_slug: . rewrite_withfront: true rewrite_hierarchical: true show_admin_column: false show_in_rest: true show_in_quick_edit: "" rest_base: "" rest_controller_class: "" meta_box_cb: ""

Custom Post Type Permalinks

カスタム投稿タイプのパーマリンクの設定
http://mit.xii.jp/solution/%solution_category%/%postname%/

カスタムタクソノミーのパーマリンク設定
カスタマイズされたカスタムタクソノミーのパーマリンクを使用する。 =>チェックしています。
これをオンにした場合、カスタムタクソノミーのパーマリンクは、http://mit.xii.jp/post_type/taxonomy/term となります。
と表記されています。


どなたか、アドバイスいただける方いらっしゃいましたらご教授いただけないでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

これをfunctionsに書き、表示されないでしょうか?
すでにタクソノミーはあるとのことでしたので!

function create_post_type(){ global $wp_rewrite; $wp_rewrite->flush_rules(); register_post_type('カスタム投稿名', array( 'label' => '投稿', 'labels' => array( 'all_items' => '一覧' ), 'description' => '', 'public' => true, 'show_ui' => true, 'show_in_menu' => true, 'capability_type' => 'post', 'hierarchical' => false, 'rewrite' => array( 'slug' => 'news', 'with_front' => false, 'feeds' => false, 'pages' => true, ), 'query_var' => true, 'has_archive' => true, 'exclude_from_search' => false, 'menu_position' => 5, 'supports' => array( 'title', 'editor', 'revisions', 'thumbnail', 'page-attributes', ), ) ); register_taxonomy( '', //タグ名(任意) '', //カスタム投稿名 array( 'label' => 'タグ', 'singular_label' => 'タグ', 'labels' => array( 'add_new_item' => 'タグを追加' ), 'public' => true, 'show_ui' => true, 'show_in_nav_menus' => true, 'hierarchical' => false ) ); register_taxonomy( '',// カスタム分類名 '',// カスタム投稿名 array( 'label' => 'お知らせカテゴリ',// 管理画面などで表示される名前 'singular_label' => 'カテゴリ', 'labels' => array( 'all_items' => 'カテゴリ一覧', 'add_new_item' => 'カテゴリを追加' ), 'hierarchical' => true, 'show_ui' => true, 'query_var' => true, 'rewrite' => array('slug' => 'category'), 'show_in_rest' => true, 'exclude_from_search' => false ) ); } add_action('init', 'create_post_type');

投稿2020/01/14 04:11

kyaapo

総合スコア17

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gamips

2020/01/15 02:45

ありがとうございます。上記であれば表示されますが、実現したいことが、質問文の通りタクソノミーと記事のURLを正しいネスト構造にしたいというところにあります。それに合わせて上記のfunctionを変更してもやはりタクソノミーが404になってしまっています。
kyaapo

2020/01/15 04:53

管理画面の中の設定からパーマリンク設定に入り、 カスタム投稿タイプのパーマリンク設定の設定に/%postname%/を入れてみても動かないですか? 共通設定も/%postname%/でしています。
guest

0

phpを直接作成してみる方法はいかがでしょうか??

taxonomy-〇〇.php
archive-〇〇.php
single-〇〇.php

投稿2020/01/10 09:02

kyaapo

総合スコア17

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gamips

2020/01/10 09:05

ありがとうございます。 以下のもので作成していますが、表示されない状況です。 single-solution.php taxonomy-solution_category.php
kyaapo

2020/01/10 09:40

custom post type UIを外し、functionsに直接記述するのは試されましたか??
gamips

2020/01/13 07:40

試してみましたがこちらもダメでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問