current_user_can

説明

bool current_user_can( string $capability [, mixed $args ] )
現在のユーザーがパラメータ$capabilityで指定した権限(または役割)を所有しているか調べる。

パラメータ

  • $capability
    権限を指定。
  • $args
    追加パラメータを指定(省略可)。

返り値

権限を所有している場合はtrue、所有していない場合はfalseを返す。

注意

パラメータ$capabilityに指定できる主な権限は次の通り。
権限
テーマの変更'switch_themes'
テーマの編集'edit_themes'
プラグインの有効化'activate_plugins'
プラグインの編集'edit_plugins'
ユーザの編集'edit_users'
ファイルの編集'edit_files'
設定の管理'manage_options'
インポート'import'
コメントの承認'moderate_comments'
カテゴリーの管理'manage_categories'
リンクの管理'manage_links'
フィルターなしのHTML'unfiltered_html'
投稿された記事の編集'edit_published_posts'
他のユーザの記事の編集'edit_others_posts'
ページの編集'edit_pages'
ファイルアップロード'upload_files'
記事の投稿'publish_posts'
記事の編集'edit_post'
閲覧'read'
管理者はこれらの権限をすべて所有している。ユーザ別の権限は、コラム「LevelとCapability」を参照。

使用例

  • 現在のユーザーが'edit_themes'を所有しているか調べる。
    <?php if ( current_user_can( 'edit_themes' ) ) { ?>
  • $post_idの投稿情報を編集できるか調べる。
    <?php if ( current_user_can( 'edit_post', $post_id ) ) { ?>

フィルター

直接実行するフィルターはありません。

アクション

直接実行するアクションはありません。

ソースファイル

/wp-includes/capabilities.php

最終更新 : 2018年05月27日 10:52



お勧め

ログインページのタイトルを変更してみる(2018年5月27日 更新)

バージョン4.9では新しいフィルターやフィルターのパラメータの追加が多数行われている。ここではその一例としてログインページ関連で追加された2つのフィルターを紹介する。

子カテゴリのアーカイブページを親カテゴリ用のテンプレートファイルで表示しよう(2011年12月8日 更新)

少し前に投稿した「適切なテンプレートファイルを用意してテンプレート内の振り分け処理を無くす」で説明した通り、特定のカテゴリ専用のテンプレートとしてcategory-○○.phpを用意することで、category.phpやarchive.php内で振り分けを行う必要がなくなる。ただ、すべてのカテゴリ分を用意するのは効率的ではないし、特に子カテゴリについては親カテゴリと共通内容になるケースが多いのではないだろうか。ここでは、子カテゴリの個別テンプレートファイルを作らず、親カテゴリのテンプレートを利用する方法を紹介する。

meta_compare_key使ってみた(2019年3月19日 更新)

ブロックエディターの登場により、標準のカスタムフィールドを使う機会はかなり減った気がする。そんな中、5.1.0で追加されたのが、カスタムフィールド名(メタキー)に含まれる文字列を指定する'meta_compare_key'キーだ。

各種リンクを取得する関数一覧(2014年6月12日 更新)

サイト設計において、ページ間の相互リンクは重要である。WordPressでは各種ページのリンク(パーマリンク)を取得する関数を用意しており、それらを一通り把握しておくべきだろう。

Login rebuilder:プラグイン作ってみました(2019年4月22日 更新)

昨年投稿した「ログインページを変える」をプラグイン化。ログインページを独自の名前のページ変更し、標準のログインページwp-login.phpを使用できないようにするプラグインです。部外者によるwp-login.phpのアクセスにお悩みの方にお勧めします。また2.0.0では「XML-RPCリクエストの管理機能」を追加。2.2.0では管理者のログイン時にメールで通知する機能を追加しました。