2018.09.05

WordPressでユーザー権限の名称を変更する方法

こんにちは、ゾノ( @ozonosho )です。

さて、今日のブログではWordPressでユーザー権限の名称を変更する方法を紹介したいと思います。

WordPressは標準機能で「管理者」「編集者」「投稿者」「寄稿者」「購読者」の5つのユーザー権限が用意されていますが、各権限の名称を変更したいケースもあると思います。

今回は実際に会員制サイトを運用される方から「投稿者・購読者の名称をそれぞれ『有効会員』『無効会員』に変更して利用したい」という相談を受けたので実装してみました。

WordPressでユーザー権限の名称を変更する方法

実装は簡単で、functions.phpに下記のコードを追加してください。

//権限名称の変更
function change_role_name() {
  global $wp_roles;
  if(!isset($wp_roles)) $wp_roles = new WP_Roles();

  $wp_roles->roles['author']['name'] = '有効会員';
  $wp_roles->role_names['author'] = '有効会員';

  $wp_roles->roles['subscriber']['name'] = '無効会員';
  $wp_roles->role_names['subscriber'] = '無効会員';
}
add_action ('init', 'change_role_name');

グローバル変数$wp_rolesの中に権限情報があるため、フック「init」でサイト読み込み時に名称を上書きするようにしています。

ここでは投稿者と購読者の名称のみ変更していますが、下記のようにすべての権限の名称を変更することも可能です。

//権限名称の変更
function change_role_name() {
  global $wp_roles;
  if(!isset($wp_roles)) $wp_roles = new WP_Roles();

  $wp_roles->roles['administrator']['name'] = '管理者の名称';
  $wp_roles->role_names['administrator'] = '管理者の名称';

  $wp_roles->roles['editor']['name'] = '編集者の名称';
  $wp_roles->role_names['editor'] = '編集者の名称';

  $wp_roles->roles['author']['name'] = '投稿者の名称';
  $wp_roles->role_names['author'] = '投稿者の名称';

  $wp_roles->roles['contributor']['name'] = '寄稿者の名称';
  $wp_roles->role_names['contributor'] = '寄稿者の名称';

  $wp_roles->roles['subscriber']['name'] = '購読者の名称';
  $wp_roles->role_names['subscriber'] = '購読者の名称';
}
add_action('init', 'change_role_name');

コピペするだけで簡単にユーザー権限の名称を変更することができるのでぜひお試しください。

おわりに

以上、今回の記事ではWordPressでユーザー権限の名称を変更する方法を紹介させていただきました。

当サイトではWordPressのカスタマイズ依頼を請け負っています。実現したい機能・要望がある方はぜひ下記ページよりご相談ください。

あなたのサイトに理想の機能を実装!WordPressカスタマイズサービス

本サービスはあなたのWordPressサイトに理想の機能を実装するサービスとなります。 どのような機能・要望でも実現可能です! Wo......

→この記事を読む