勉強したことのメモ

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の管理画面で記事一覧にアイキャッチ画像を表示
WordPressの管理画面で記事一覧にアイキャッチ画像を表示

WordPressの管理画面で記事一覧にアイキャッチ画像を表示させる方法のメモ。 ...

WordPressのデータベースの整理について(リビジョン削除、MyISAMからInnoDBに変更)
WordPressのデータベースの整理について(リビジョン削除、MyISAMからInnoDBに変更)

WordPressのデータベースを直接変更・削除することは今まであまりなかった。 ...

WP Social Bookmarking LightでSNSボタンが表示されない際の対応方法
WP Social Bookmarking LightでSNSボタンが表示されない際の対応方法

WordPressでWordPress WP Social Bookmarkin ...

WordPressで「No URL was~」というエラーの原因と対応方法
WordPressで「No URL was~」というエラーの原因と対応方法

WordPressでmp4ファイルをアップロードして記事に埋め込んだものの、記事 ...