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



お勧め

カスタムフィールド関連関数のおさらい(2012年6月22日 更新)

カスタムフィールドは、投稿記事の拡張情報としてよく利用されている。投稿ページで登録した情報をアーカイブや投稿ページで表示しているが、投稿ページを表示する際にカスタムフィールドの値を更新して、サイドバーのようなページ内要素に利用したりしている。

MOファイルを作ってみた(2018年7月25日 更新)

テーマやプラグインで使用するMOファイルはWindows環境では「Poedit」アプリを使うことが多かったが、最近では「GlotPress」のようなプラグインも増えてきており、選択肢は広がっている。定期的に開発環境を見直す過程で「Poedit」から「GlotPress」に切り替えようと思ったのだが、微妙にしっくりこなかった。

日本語名のユーザーを登録する(2018年5月27日 更新)

標準のログインID(ユーザー名)は、英数字と一部の記号の組み合わせで構成されている。一般的なシステムのログインIDはおおむねこんな感じだが、ふと「インターネット環境ならログインIDに日本語が使用できてもいいんじゃないか」と思い、実現できるか調べてみた。

ショートコードを使ってテーマ内の画像URLを簡単に指定する(2018年5月27日 更新)

投稿記事の中で画像パーツを使いたいときがある。画像パーツの配置場所は、/imgディレクトリのようなテーマ外の場合と、/wp-content/themes/mytheme/imagesディレクトリのようなテーマ内の場合があり、今回は後者のケース。ショートコードを使って投稿記事の画像ファイルのURLを記述する方法を紹介したい。

HTML entities button:プラグイン作ってみました(2017年12月17日 更新)

以前投稿した「HTML編集モードに定型文ボタンを追加する」をアレンジして、HTML編集モードに特殊文字(HTMLエンティティ)を挿入できるボタン、顔文字を挿入できるボタン、過去の投稿ページのリンクを挿入できるボタンを追加するプラグインを作ってみました。HTML編集モードの作業効率を向上させるプラグインです。2.1.0では「Dashiconsの挿入」を追加しました。HTML編集モードをメインに使用されている方は、お試しあれ。