勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

WordPressでユーザー毎にフラグを持たせ分岐処理を行う方法

   2024/02/22  WordPress

WordPressでユーザー毎に何らかのフラグを持たせて、フラグによって分岐処理を行いたかった。権限グループという振り分けもあるけど、できれば独自のフラグで管理したかった。以下に方法をメモ。

 

ダッシュボード側に機能追加

テーマのfunctions.phpに以下を記述する。

function user_original_flg( $user ){
    $user['flg'] = 'フラグ(hoge/fuga/piyo)';
    return $user;
}
add_filter('user_contactmethods', 'user_original_flg', 10, 1);

flgの部分は適宜書き換え可能で、ここに書いた名前がWordPressデータベースにあるusermetaテーブルのmeta_keyに書き込まれる。

「フラグ(hoge/fuga/piyo)」はWordPressのダッシュボード側に表示される。適当に説明文を書くと良い。

 

出力方法

$user_flg = get_user_meta($author_id, 'flg', true); //$author_idはユーザーID

で取り出せる。尚、既存のmeta_keyと重複した場合にどうなるか分からないので気をつける。

以下の「ユーザーのプロフィール項目」のキーは避けておいた方が良さそう。

http://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_user_meta

 - WordPress

  関連記事

WordPress Popular Postsのサムネイルが表示されない
WordPress Popular Postsのサムネイルが表示されない

WordPressの人気記事を表示させるWordPress Popular Po ...

WordPressにて記事内で動画(mp4)ファイルの再生する方法
WordPressにて記事内で動画(mp4)ファイルの再生する方法

WordPressでyoutube等の動画サイトの埋め込みタグではなく、mp4フ ...

WordPressを4.8.2にして不具合
WordPressを4.8.2にして不具合

WordPressを4.8.2にすると記事の新規追加時にウィジウィグの挙動がおか ...

Advanced Custom Fieldsで設定した項目を条件に記事一覧を取得する方法
Advanced Custom Fieldsで設定した項目を条件に記事一覧を取得する方法

WordPressでAdvanced Custom Fieldsにて設定した項目 ...

WordPressと別プログラム間でSESSIONが引き継げない場合の対応方法
WordPressと別プログラム間でSESSIONが引き継げない場合の対応方法

同一サーバ内に自作したプログラムとWordPressを設置しており両者でセッショ ...