勉強したことのメモ

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

  関連記事

PHP8系で「Warning: Constant xxxxx already defined in」エラーの対応方法

PHP8系&WordPress6.4.3で「Warning: Const ...

CSVファイルをアップロードしてWordPressに記事を投稿する方法

CSVファイルをアップロードすることでWordPressに記事を投稿したかった。 ...

WordPressで閲覧者にテーマを変更させるプラグイン(Theme Switcher)

「新規サイトを○○みたいなイメージでWordPressのテーマを見繕って欲しい」 ...

WordPressにてAdvanced Custom Fieldsを用いて連載(シリーズ)記事機能を実装する方法

先日「Series」プラグインで連載(シリーズ)記事機能の実装方法をメモしたが、 ...

WordPressのxmlrpc.phpに対する攻撃の対策方法

サーバーの死活監視をしているシステムから、1つのサイトが落ちているとアラートがき ...