MENU

会員制プラグインWP-Members細部のカスタマイズ:ラベル変更他!ショートコード等備忘録

会員制プラグインWP-Members細部のカスタマイズ:ラベル変更他!ショートコード等備忘録

会員制サイトを手軽に作れるWordpressのプラグインWP-Members。
個人やごく小さなコミュニティでは有効的なプラグインです。

特殊なプラグインの為、カスタマイズ方法の情報も多くはありません。

当ブログ及び関連ブログでも会員制にしているブログがあります。
場合によってはカスタマイズする事があります。

このブログは会員制にする必要性は僅かですが、テスト的にも採用している記事があります。
この記事も同様で、カスタマイズした部分の備忘録になります。

主なカスタマイズはラベルの変更になりますが、ラベルの変更は検索すれば容易に探せます。
この記事はさほど重要な内容ではありませんが、テストケースとして登録者のみ閲覧できる記事になっています。

Contents

WP-Members

WP-Membersは手軽に会員制のブログやサイトが構築できるWordpressのプラグインです。

WordPressの特性上、大規模な企業のサイトには向いていませんが、個人や小規模の店舗等には便利なプラグイン。

WP-Membersカスタマイズ

1)会員には内部を見せない
2)ログインした時に氏名を表示させる
3)オリジナルの「名・氏」の順を「氏・名」に逆転させる
4)ログイン等各所ラベルの変更

以下、functions.phpに追記の事

///////////////////////////////////////////////
//wp-membersカスタマイズ ここから
///////////////////////////////////////////////
//会員がログイン時に内部を表示させない
function my_function_admin_bar($content) {
 return ( current_user_can("administrator") ) ? $content : false;
}
add_filter( 'show_admin_bar' , 'my_function_admin_bar');

//サイドバーの表示をdisplay_nameにする
function my_sidebar_status_args( $args ) {
    $current_user = wp_get_current_user();
    $args['status_text'] = " $current_user->display_name <br />";
    return $args;
}
add_filter( 'wpmem_sidebar_status_args', 'my_sidebar_status_args' );

// ユーザー登録時にlast_nameとfirst_nameをdisplay_nameにセットする
function set_display_name( $inputs ) {
    $inputs['display_name'] = $inputs['last_name'].$inputs['first_name'];
    return $inputs;
}
add_filter( 'wpmem_register_data', 'set_display_name', 2 );
// ユーザーの姓名の順序を逆にする
function user_name_revert() {
  ?>
  <script async>
  (function($) {
    var last_name = $('#last_name');
    var first_name = $('#first_name');
    var last_name_tr = last_name.parents('tr');
    var first_name_tr = last_name_tr.prev('tr');
    var last_name_input = last_name.parent('td').html();
    var first_name_input = first_name.parent('td').html();
    last_name_tr.after(first_name_tr);
    last_name.parent('td').html(first_name_input);
    first_name.parent('td').html(last_name_input);
  })(jQuery);
  </script>
  <?php
}
add_action('admin_print_footer_scripts', 'user_name_revert');
  //以下文言変更
function my_default_text($text) {
  $current_user = wp_get_current_user();

// ログインフォーム(共通)
    $text['login_username'] = 'メールアドレスを入力';
	
  // ログインフォームの「既存ユーザのログイン」
  $text['login_heading'] = 'ログイン';

  // ログインフォームの「ログイン情報を保存」
  $text['remember_me'] = 'ログイン情報を記憶';

  // ログインフォームの「はじめての方はこちら」
  $text['register_link_before'] = '';

   // ログインフォームの「新規ユーザー登録」
  $text['register_link'] = '新規会員登録';

   // ログインフォームの「パスワードをお忘れですか?」
  $text['forgot_link_before'] = '';

   // ログインフォームの「パスワードリセット」
  $text['forgot_link'] = 'パスワードを忘れた場合';

  // ウィジェットの「こんにちは {ユーザー名} さん」
  $text['sb_status'] = "ごゆっくり! $current_user->display_name さん";

  // ログインページの「こんにちは {ユーザー名} さん」
  $text['login_welcome'] = "ようこそ! $current_user->display_name さん";

  // ウィジェットの「パスワードをお忘れですか?」
  $text['sb_login_forgot'] = 'パスワードを忘れた場合';
	
  // ウィジェットの「登録」
  $text['sb_login_register'] = '新規会員登録';
	
  // 登録フォームの「新規ユーザー登録」
  $text['register_heading'] = '';
	
  // 登録フォームの「Terms of Service」
  $text['register_tos'] = '利用規約をお読みいただき、チェックしてください。';

  // メンバーシップの「このコンテントにアクセスする権限がありません。」
  $text['product_restricted'] = 'このページは会員のみ閲覧できます。';

  return $text;
}
add_filter('wpmem_default_text', 'my_default_text');
///////////////////////////////////////////////
//wp-membersカスタマイズ ここまで
///////////////////////////////////////////////

WP-Membersショートコード

WP-Membershで使用できるショートコードは多く、使い分ける事ができます。

[[wpmem_form login]]
//ログインフォームを出力
 
[[wpmem_form register]]
//新規登録フォームを出力
 
[[wpmem_profile]]
//ユーザープロフィールを出力
 
[[wpmem_form user_edit]]
//ユーザープロフィールの編集フォームを出力
 
[[wpmem_logout]]
//ログアウトページの出力
 
[[wpmem_form password]]
//パスワードの変更・リセット
 
[[wpmem_form forgot_username]]
//ユーザー名を忘れた場合の回復するためのEメール入力フォーム
 
[[wpmem_logged_in]]ログインユーザーのみ[[/wpmem_logged_in]]
//ショートコードで囲んだテキストがログインユーザーのみに表示
 
[[wpmem_logged_out]]ログアウトユーザーのみ[[/wpmem_logged_out]]
//ショートコードで囲んだテキストがログアウトユーザーのみに表示
 
[[wpmem_field user_login]]
//ユーザー名を表示
 
[[wpmem_avatar]]
//プロフィール画像を表示
 
[[wpmem_field user_email]]
//Eメールアドレスを表示
 
[[wpmem_login_link]]ログイン[[/wpmem_login_link]]
//ログインページへのリンクとショートコードで囲んだリンクテキスト
 
[[wpmem_reg_link]]新規登録[[/wpmem_reg_link]]
//新規登録ページへのリンクとショートコードで囲んだリンクテキスト
Contents