私は今日初めてRole and Capabilities APIを使用し、優れた Membersプラグイン を利用しています。しばらくの間、細心の注意を払っていましたが、 "ページの編集"機能には2つのことがあります。
私はこの機能を2つに分割しようとしています。私のユーザーには
私はこれが起こることを可能にする私のテーマのためにいくつかのコードを書くことを探しています。非常に簡単に新しい機能を作成できます。それから課題はそれに応じてWordPressに対応させることです。
どんな考えでも感謝されるでしょう。
はい、これは確かに問題です。専用の 'create_posts'機能が計画されています。
こんにちは私はしばらくこれを調査しています、次のハックを思い付きました。 wp-admin/new_post.phpで、wp_die行の後に次の行を追加します。
wp_die( __('Invalid post type') );
if ( !current_user_can( 'manage_options' ) and $post_type == 'page') {
echo "To create new pages please ask site admin";
exit;
} //if user is not admin, a warning is issued and script terminated
それからwp-admin/menuで、adminにadd pageサブメニューを表示するための条件を追加します。行は通常そこにありますが、ifステートメント内には含まれていません
if ( current_user_can( 'manage_options' )) { //if user is admin, show submenu for creating new pages, else no luck
$submenu['edit.php?post_type=page'][10] = array( _x('Add New', 'page'), get_post_type_object( 'page' )->cap->create_posts, 'post-new.php?post_type=page' );
}
編集ページの[新規追加]ボタンを削除する方法はまだわかっていませんが、発行権限を持つユーザーは既存のページを編集できますが、新しいページを作成することはできません。新しいページボタンを押すと警告が表示され、先に進むことができません。投稿は影響を受けません。同じコードを簡単に適用して、わずかな編集で新しい投稿の作成を防ぐこともできます。
これが役立つことを願っています - Ackab