フォームを手軽に作れてデータベース保存もできるWordPressプラグインのMW WP Form。
セレクトボックスを作るときに、フィルターフックを使えば自分で選択肢を色々と変更できます。
公式マニュアルにも別例が掲載されていますが、こちらはユーザー一覧の例を
セレクトボックスでフォーム側で作っておく
ユーザー一覧
// childrenの初期値は、入力値が空で「選択してください」のラベル表示が目的。必須チェックに。
[mwform_select name="field-name" children=",:選択してください"]
フィルターフックでセレクトボックスの一覧をカスタマイズ
functions.php
function set_users_for_select( $children, $atts ) {
if ( $atts['name'] == 'field-name' ) {
foreach ( get_users() as $user ) {
// ログインIDを入力値、表示それぞれに反映
// 配列のキーが入力値、配列の値が表示内容
$children[$user->user_login] = $user->user_login;
}
}
return $children;
}
// xxxの部分にはフォーム識別子を設定する
// [mwform_formkey key="1"] の「1」
add_filter( 'mwform_choices_mw-wp-form-xxx', 'set_users_for_select', 10, 2 );