勉強したことのメモ

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のメディアライブラリで「画像を編集」をクリックしても画像が表示されない(編集できない)場合の対応方法
WordPressのメディアライブラリで「画像を編集」をクリックしても画像が表示されない(編集できない)場合の対応方法

WordPressのメディアライブラリで「画像を編集」をクリックしても画像が表示 ...

WordPressの5系から搭載されたブロックエディタ(Gutenberg)を元に戻す方法
WordPressの5系から搭載されたブロックエディタ(Gutenberg)を元に戻す方法

WordPressを5系にアップデートしたところ記事投稿ページのエディタが大幅に ...

WordPressで翌日以降に編集した記事のみ最終更新日を表示する方法
WordPressで翌日以降に編集した記事のみ最終更新日を表示する方法

WordPressで翌日以降に編集した記事のみ最終更新日を表示させたい。逆に言う ...

WordPressのサーバー移行で気付いた点
WordPressのサーバー移行で気付いた点

あるWordPressを置いているサーバーのリソースが苦しくなってきたので、新た ...

WordPressでサイト及びサーバ内ファイルが改ざんされた際の対処方法
WordPressでサイト及びサーバ内ファイルが改ざんされた際の対処方法

WordPressで立ち上げたサイトがあり、しばらく放置していたが久しぶりにチェ ...