Simple WP Membershipの各画面カスタマイズ

各画面のプラグインエディタファイル

会員登録画面のHTML出力
simple-membership/views/add.php
会員ログイン画面のHTML出力
simple-membership/views/login.php
会員パスワードリセット画面のHTML出力
simple-membership/views/forgot_password.php
会員プロフィール・変更画面のHTML出力
simple-membership/views/edit.php
各種メッセージや注意文などのHTML出力
simple-membership/classes/class.simple-wp-membership.php
ログインやアクセス制限回りの注意文などのHTML出力
simple-membership/classes/class.swpm-access-control.php
”アカウントを削除”などのボタンHTML出力
simple-membership/classes/class.swpm-utils.php
会員レベルごとのダッシュボードの調整

ダッシュボード出力制御

グローバル変数

global $pagenow;
⇒ダッシュボードで会員が現在表示しているページが代入される変数です。 使い方は、if($pagenow == ‘edit.php’)…など

global $member_rank;
$member_rank = SwpmMemberUtils::get_logged_in_members_level();
⇒Simple WP Membership用に用意した変数です。
SwpmMemberUtils::get_logged_in_members_level()関数でSimple WP Membershipで設定した会員レベルのIDを取得できます。 使い方は、if($member_rank == ‘2’)…など

global $expiry_date
⇒アカウントの有効期限を取得します。
$auth = SwpmAuth::get_instance();
$expiry_date = $auth->get_expire_date();
echo “アカウント有効期限: “.$expiry_date;

Simple WP Membership その他PHP変数の調整

各種関数

current_user_can(‘edit_others_posts’) ⇒現在のユーザー権限の関数です。 edit_others_postsは他ユーザー投稿を編集可能なユーザー権限となるので、上記ではユーザー権限が編集者以上が対象になります。 使い方は、if(current_user_can(‘edit_others_posts’))…など

is_admin ⇒この関数は条件分岐で使用される真偽値型の関数で、ダッシュボードまたは管理画面にログインしているかどうかを判定します。 使い方は、if(is_admin)…など

各アクションフック・フィルターフック

admin_menu
管理画面メニューの基本構造が配置された後に実行。
admin_print_styles
HTML ヘッダーでCSS/スタイルシートを実行。
admin_enqueue_scripts
HTML ヘッダーでプラグインまたはテーマが JavaScript および CSS をすべての管理画面で実行できるようにする。
admin_notices
ネットワーク管理画面・ユーザー管理画面を除く管理画面メニューがページに出力後に実行。
admin_init
管理画面各ページがレンダリングされる前に実行。
admin_print_footer_scripts
JavaScript および CSS をすべての管理画面のbody閉じタグ直前で実行。
pre_get_posts
クエリが実行される前に実行。