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

最終更新 : 2017年03月15日 16:35



お勧め

LevelとCapability(2011年4月14日 更新)

プラグインやテーマの管理ページを作成する際など、ユーザのレベルと権限を確認することがある。ここでは、権限グループ別のレベルと権限の有無を整理してみた。

プラグインのヘッダー情報を国際化対応しよう(2017年8月4日 更新)

バージョン4.8がリリースされてひと段落。あらためてプラグイン一覧ページを見てみると「Akismet」が「Akismet Anti-Spam (アンチスパム)」と表示されていた。説明文だけじゃなくプラグイン名も国際化対応できたのね。

投稿一覧に独自リンクを追加する(2013年10月16日 更新)

管理者ページの「投稿一覧」や「固定ページ一覧」の各投稿記事はマウスポインタを移動すると、「編集」や「クイック編集」といったリンクが表示される。このリンクに独自のリンクを追加する方法を調べてみた。

初期状態で「抜粋」ウィジェットを表示する(2014年1月7日 更新)

投稿編集ページのウィジェットは標準で表示されるものとされないものがある。フォーラムに『投稿の編集画面にデフォルトで抜粋を表示させたい』という投稿があったので、ちょっと調べてみた。

canvasタグを投稿したい(2013年12月27日 更新)

以前「投稿内容のid属性などを保存するための対策」で取り上げたように、WordPressでは投稿に記述できるHTMLタグが制限されている。同コラムでこの制限を調整する対策を紹介しているが、3.5以降ではフィルター関数を登録して対応できるようだ。