こんにちは
あまりスマートじゃないかもしれませんが、下記のようにするのはどうでしょうか?
フォームのショートコード:
[mwform_select name="食べ物" children="optgroup-野菜,トマト,ナス,/optgroup-野菜,optgroup-果物,りんご,さくらんぼ,/optgroup-果物"]
「optgroup-〇〇〇」(〇〇〇 は optgroup のラベル) で optgroup タグの開始、「/optgroup-〇〇〇」で optgroup タグを閉じる。
入力フィールド用のテンプレート:
テーマに下記ファイルを作成。
/テーマ/mw-wp-form/form-fields/select.php
<select name="<?php echo esc_attr( $name ); ?>"
<?php echo MWF_Functions::generate_input_attribute( 'id', $id ); ?>
<?php echo MWF_Functions::generate_input_attribute( 'class', $class ); ?>
>
<?php foreach ( $children as $option_value => $option_label ) : ?>
<?php
if ( strpos( $option_label, '/optgroup-' ) === 0 ) {
echo '</optgroup>';
continue;
}
if ( strpos( $option_label, 'optgroup-' ) === 0 ) {
echo '<optgroup label="' . esc_html( substr( $option_label, strpos( $option_label, '-' ) + 1 ) ) . '">';
continue;
}
?>
<option value="<?php echo esc_attr( $option_value ); ?>" <?php selected( $option_value, $value, true ); ?>>
<?php echo esc_html( $option_label ); ?>
</option>
<?php endforeach; ?>
</select>
ありがとうございます、ご教授いただいたコードで実現することができました!
こちらの情報を参考に改めて色々と調べてみたら、フォーム部品もカスタマイズできるようになっていたのですね、知りませんでした、、
https://plugins.2inc.org/mw-wp-form/blog/2017/06/07/649/
今後の参考にもなりました、ありがとうございました。