質問: ### 前提・実現したいこと WordPressで投稿者権限を持つユーザーグループはカスタム投稿タイプにのみ投稿できる、というサイトを作っています。 ### 発生している問題・エラーメッセージ カスタム投稿タイプには Advanced Custom Fields で作ったカスタムフィールドを表示させているのですが、投稿者アカウントでログインするとカスタムフィールドが表示されません。 管理者、寄稿者、編集者では正しく表示されています。 カスタム投稿タイプの追加にはプラグインは使用していません。 ### 試したこと * フィールドグループの表示ルールに【権限グループ=Author】を追加した * プラグイン「User Role Editor」をインストールし、試しにフィールドグループの全権限を付与した * 「Advanced Custom Fields」以外のプラグインをすべて停止してみた いずれも効果は見られずカスタムフィールドは表示されないままです。 ### 補足情報 #### ツールのバージョンなど * WordPress 5.1.1 * Advanced Custom Fields 5.7.12 #### カスタム投稿タイプを追加しているコード ``` //カスタム投稿タイプ追加 function add_custom_post() { register_post_type( 'request', array( 'label' => 'タイトル', 'public' => true, 'has_archive' => true, 'menu_position' => 5, 'supports' => array( 'title', 'editor', 'custom-fields', 'rewrite' => array('with_front' => false) ) ) ); } add_action('init', 'add_custom_post'); function add_taxonomy() { //カテゴリ register_taxonomy( 'request-cat', 'request', array( 'label' => 'カテゴリ', 'singular_label' => 'カテゴリ', 'labels' => array( 'all_items' => 'カテゴリ一覧', 'add_new_item' => 'カテゴリを追加' ), 'public' => true, 'show_ui' => true, 'show_in_nav_menus' => true, 'hierarchical' => true ) ); } add_action( 'init', 'add_taxonomy' ); ``` #### カスタムフィールドグループ設定画面のスクリーンショット ![Advanced Custom Fields](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/82be4f2edb7491e88043cbf1f6b05058.png)
回答: 自己解決しました。ダッシュボードの投稿一覧に自分の投稿のみが表示されるよう、functions.php に下記のようなコードを書いていたのですがこちらが原因でした。 ``` function show_only_authorpost($query) { global $current_user; if(is_admin()){ if(current_user_can('author') ){ $query->set('author', $current_user->ID); } } } add_action('pre_get_posts', 'show_only_authorpost'); ``` tohkaiさん、ありがとうございました。