最も必要とされている時に、信頼できるWordPressチュートリアルを。
WordPress入門ガイド
WPBカップ
2500万人以上
当社のプラグインを使用しているウェブサイト
16+
WordPress経験年数
3000+
専門家によるWordPressチュートリアル

WordPress管理画面で著者を自分の投稿のみに制限する方法

WPBeginnerでは、通常、ウェブサイトのユーザーロールをカスタマイズしています。ユーザーにロールに必要なタスクのみを実行させることで、エラーの可能性を減らし、ウェブサイトのセキュリティを向上させることができると考えています。

読者の中には、複数著者で運営するWordPressブログで、著者が自分の投稿のみを表示・編集できるように制限できるかという質問がありました。プライバシーの観点から、公開されるまで他の著者の投稿を寄稿者に見られたくないと考えています。

これは間違いなく可能であり、この記事では、WordPressダッシュボードで著者が自分の投稿のみを表示および管理できるように制限する方法を簡単に紹介します。

著者が自分の投稿のみに制限する方法

著者に自分の投稿のみを制限する理由

デフォルトでは、WordPressウェブサイトのすべての投稿とページは、管理画面でのユーザーロールに関係なく、すべてのユーザーに表示されます。著者、編集者、寄稿者、管理者であっても、すべての記事を表示できます。

著者があなたの会社やチームの一員である場合、これは通常問題になりません。

しかし、特定の状況では、人々が自分の投稿のみを表示できるように制限することが役立ちます。たとえば、複数著者ウェブサイトを運営している場合、著者がレビュー中の他のライターの記事を見られないようにすることが役立ちます。

それでは、WordPress 管理画面で著者が自分の投稿のみを表示できるようにする方法を見てみましょう。この記事では次のトピックを扱います。

プラグインを使用して著者を自分の投稿のみに制限する

WordPressプラグインを使用すると、コードを編集せずに、著者が自分の投稿のみを表示できるように簡単に設定できます。

このチュートリアルでは、PublishPress Permissionsプラグインを使用します。これはWordPressの権限を管理できる無料のプラグインで、ライターが自分の記事のみを表示するように制限するためにすぐに機能します。

PublishPress Proバンドルにはプレミアムバージョンもあり、メディアライブラリに誰がアクセスできるかなど、より多くの権限設定を提供します。ただし、無料バージョンから始めることができます。

まず、PublishPress Permissionsプラグインをインストールして有効化する必要があります。詳細については、WordPressプラグインのインストール方法に関するガイドに従ってください。

プラグインがアクティブになると、自動的に著者とエディターが WordPress 管理エリアで自分の投稿のみを表示するように制限されます。

例えば、管理者の権限でログインし、ダッシュボードから 投稿 » 全投稿 に移動すると、すべての投稿が表示されます。

プラグインを有効にする前の投稿

ただし、著者のアカウントからWordPress管理エリアにログインすると、著者が作成した投稿のみが表示されることに気づくでしょう。

他のユーザーが作成した投稿は表示されません。

作成者のみの投稿

さて、エディターがすべての投稿にアクセスできるようにして、レビューできるようにしたい場合はどうすればよいでしょうか?その方法を見てみましょう。

エディターがすべての投稿を表示できるようにする

上記の方法の問題点は、管理者がすべての投稿を表示できるだけであることです。

多くのWordPressサイトには、他の著者やゲスト寄稿者が提出した記事の校正を担当する編集者がいます。このプラグインを使用すると、編集者は自分の投稿のみに制限されます。

ただし、PublishPress Capabilitiesプラグインのようなプラグインを使用するか、サイトのテーマファイルにコードを追加することで、エディターが他の著者のコンテンツを確認できるようにすることができます。両方の方法を紹介します。

PublishPress Capabilitiesプラグインの使用

PublishPress Capabilitiesは、PublishPressによって作成された別のプラグインです。このチュートリアルのために、無料バージョンを使用します。PublishPress Proアカウントを購読すると入手できるプロバージョンもあります。

まず、WordPressウェブサイトにPublishPress Capabilitiesプラグインをインストールして有効化する必要があります。WordPressプラグインのインストール方法に関するステップバイステップガイドに従ってください。

プラグインがアクティブになったら、WordPress 管理メニューの 権限 をクリックします。これにより、「ロール権限」ページが開かれ、さまざまなユーザーロールの権限を変更できます。

次に、左上隅のドロップダウンメニューから編集したいユーザーの役割を選択します。

ユーザーの役割の権限を選択

「エディター」ロールを選択したら、「編集機能」設定の下にある「他の人の編集」チェックボックスが有効になっていることを確認する必要があります。

これにより、エディターは他の投稿を編集できるようになります。

他の人の編集を許可するチェックボックス

その後、[追加の機能]セクションまでスクロールし、「他の投稿を一覧表示する」チェックボックスが有効になっていることを確認してください。

この方法で、エディター権限を持つユーザーは他の著者の投稿を表示できるようになります。

他の投稿をリストするチェックボックスを有効にする

設定を保存し、エディターとしてログインして、ウェブサイトの投稿セクションを表示してください。他の著者の投稿を表示および編集できる場合は、設定が正しくセットアップされていることを意味します。

テーマにカスタムコードを追加する

編集者がすべての投稿を表示できるようにする別の方法は、テーマファイルにカスタムコードを追加することです。ただし、この方法はコードの編集が含まれ、ウェブサイトが破損する可能性があるため、初心者にはお勧めしません。

開始するには、上級ユーザーはテーマのfunctions.phpファイルにこのコードを手動で追加できますが、WPCodeのようなコードスニペットプラグインの使用をお勧めします。

WPCode プラグインをインストールして有効化したら、WordPress ダッシュボードの コードスニペット » + スニペットを追加 ページに移動する必要があります。

そこに着いたら、「カスタムコードを追加 (新しいスニペット)」にマウスカーソルを合わせ、表示される「+ カスタムスニペットを追加」ボタンをクリックします。

WPCodeで新しいカスタムコードスニペットを追加する

これにより、カスタムコードスニペットを追加できるページが開きます。まず、スニペットが何をするかを説明するタイトルを付けます。たとえば、「エディターがすべての投稿を表示できるようにする」などです。

その後、次のコードスニペットをコードプレビューペインに貼り付ける必要があります。

function posts_for_current_author($query) {
    global $pagenow;
 
    if( 'edit.php' != $pagenow || !$query->is_admin )
        return $query;
 
    if( !current_user_can( 'edit_others_posts' ) ) {
        global $user_ID;
        $query->set('author', $user_ID );
    }
    return $query;
}
add_filter('pre_get_posts', 'posts_for_current_author');
WPCodeスニペットを使用してエディターがすべての投稿を表示できるようにする

次に、ドロップダウンメニューから「PHPスニペット」コードタイプを選択してください。

最後に、「アクティブ」設定をオンに切り替えてから、「スニペットの保存」ボタンをクリックしてコードを保存およびアクティブ化してください。

WPCodeスニペットを使用してエディターがすべての投稿を表示できるようにする

このコードは、他のユーザーの投稿を編集する権限を持つすべてのユーザーに、すべての投稿を表示させます。これは、エディターと管理者がすべての投稿を見ることができることを意味します。貢献者や著者のような他の役割を持つユーザーは、自分の投稿のみを表示できます。

詳細については、WordPressで何も壊さずにカスタムコードを追加する方法に関するガイドを参照してください。

カスタムユーザーロールを使用している場合、他のユーザーが追加した投稿を編集できるユーザーは、ダッシュボードにリストされているそれらを表示できることも覚えておく必要があります。

ボーナス:著者が特定の投稿またはページを表示できるように制限する

作成者、編集者、寄稿者、その他のユーザーロールに対して、特定のブログ投稿やページの表示、編集、削除を制限することもできます。

PublishPress Permissions プラグインを使用すると、ウェブサイトのダッシュボードで特定の投稿やページを誰が表示できるかを簡単に決定できます。

開始するには、ウェブサイトにPublishPress Permissionsプラグインをインストールして有効化してください。WordPressプラグインのインストール方法に関するチュートリアルを参照してください。

特定の記事は、ウェブサイトの編集者のみが編集できるようにし、他の誰も編集できないようにしたいとしましょう。

これを行うには、その投稿を編集できます。WordPressブロックエディターに入ったら、単に下にスクロールして「権限:この投稿を編集」メタボックスに移動します。

次に、他のすべてのユーザーロールのドロップダウンメニューをクリックし、「ブロック済み」オプションを選択する必要があります。デフォルトでは、権限は「デフォルト: はい」に設定されており、誰でも投稿を編集できます。

その後、エディターの設定が「有効」または「デフォルト:はい」オプションになっていることを確認してください。権限を設定したら、ブログ記事を必ず更新してください。

特定の投稿を表示および編集する権限を変更する

WordPressでユーザーロールの権限を変更するエキスパートガイド

この記事が、WordPress管理画面で作成者を自身の投稿のみに制限する方法を学ぶのに役立ったことを願っています。WordPressユーザーロールの権限を変更することに関連する他の記事もご覧になりたいかもしれません。

この記事が気に入った場合は、WordPressのビデオチュートリアルのために、YouTubeチャンネルを購読してください。また、TwitterFacebookでも私たちを見つけることができます。

開示: 当社のコンテンツは読者によってサポートされています。これは、一部のリンクをクリックすると、手数料が発生する可能性があることを意味します。WPBeginnerがどのように資金調達されているか、なぜそれが重要なのか、そしてどのように私たちをサポートできるかを確認してください。こちらが当社の編集プロセスです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

32 CommentsLeave a Reply

  1. Hello there, I really enjoy this website! I have a question. How to rescrict (limit, Hide) specific options or feature while Author Post New Product or Add News post. To be more clear; How to limit user from some option in “Add New Post” while publishing post. Sorry for my very bad English :(

  2. こんにちは!
    素晴らしい記事をありがとうございます。

    CapabilitiesプラグインなしでPermissionsプラグインを使用できますか?

    それとも、CapabilitiesプラグインはPermissionsプラグインの「ベース」として機能し、両方を一緒に使用する必要があるのでしょうか?

    • 一方を他方なしで使用できます。これらは、異なるユーザーレベルで利用可能な異なるオプションを変更します。

      管理者

  3. プラグインを削除するとどうなりますか?変更も削除されますか?すべてのユーザーはデフォルトに戻りますか、それともそれらのユーザーはPublishPressロールを削除するために特別な注意が必要ですか?ありがとうございます!

    • プラグインを削除すると、プラグインの設定は元に戻ります。

      管理者

  4. 本当に素晴らしいです、おめでとうございます。もしよろしければ、一つ質問させてください。このコードを変更して、下書きに関する投稿の表示と編集を作成者のみに制限するにはどうすればよいですか?

    • この記事は2015年に最後に更新されました。代替案を探し、可能になり次第この記事を更新します。

      管理者

    • プラグインを使用している場合は、その特定の質問についてはプラグインのサポートに問い合わせる必要があります。

      管理者

  5. この記事で言及されているコードは、すべての投稿タイプで機能しますか?クライアントのサイトにはカスタム投稿タイプがいくつかあり、プラグインは機能しました。コードを追加した後、現時点ではサイトをテストする時間がありません。編集者がすべての投稿を表示できるようにしようとしています。

    事前に感謝いたします!

  6. 現在ログインしているユーザーに応じてコメントをフィルタリングする方法は?

    コントリビューターに対してすべてのコメントのリストを制限したいです。自分自身の投稿のみを表示およびモデレーションするオプションを許可したいです。

    • 同じ質問ですが、他のユーザーからのコメントも非表示にするにはどうすればよいですか?

  7. このプラグインには、非著者に「ページ」を非表示にする機能は含まれていますか?ここにリストされているすべてが投稿と言っていますが、ページも含まれますか?私たちのサイトは投稿よりもページを使用しています。

  8. 複数の管理者がいて、管理者が自分の投稿のみを見れるようにしたい場合はどうすればよいですか?

  9. うまく機能します。もう1つの問題は、他のユーザーの投稿数を引き続き表示することです。たとえば、現在のユーザーが公開済みの投稿を2つしか持っていない場合でも、公開済みの投稿が105件あると表示されます。

    これを修正する方法について何かアイデアはありますか?

    • 何ヶ月も経ってからの返信になりますが、同じ問題を抱えている他の人のために返信します。functions.php にこれを追加してみてください。Wordpress.StackExchange.com で見つけたと思います >>

      // 投稿数を削除

      // 特定のフックを作成します
      add_filter("views_edit-post", 'custom_editor_counts', 10, 1);

      function custom_editor_counts($views) { // var_dump($views) を使用して、非表示にできる他の配列要素を確認します。 unset($views[‘all’]); unset($views[‘publish’]); unset($views[‘pending’]); unset($views[‘trash’]); return $views; }

Leave A Reply

コメントいただきありがとうございます。すべてのコメントは、コメントポリシーに従ってモデレーションされ、メールアドレスは公開されません。名前フィールドにキーワードを使用しないでください。個人的で意味のある会話をしましょう。