WordPress の管理画面にオリジナルの設定ページを追加する方法
昨日オリジナルの設定メニューを追加してみたのですが、チェックボックスの場合はどう追加したらいいのかをざっと調べてみたのでメモしておきます。
チェックボックスを利用する
input の value にいれておくものかと思って単純に input の type を checkbox にしてみたけど、値は何も入ってこない。
それならばと思い checked
属性に入れてみたところ、 on
が入ってくるため、チェックをつけていなくても保存すると必ずチェックが入るようになってしまう。つまりこれでもない。
あーでもない、こーでもないと検索したり試していると、WordPress の関数に checked
というのが利用できるということが判明。
Function Reference/checked « WordPress Codex
value="1"
を予めセットしておき、checked
をいれておくと。ふむふむ。
ということで最終的に辿り着いたのが下記
<input type="checkbox" id="check_test" name="check_test" <?php checked(get_option('check_test'), 1); ?> value="1">
チェックをつけたら設定に value の 1 という値が保存されるので、 checked 関数で第一引数に入れた変数と第二引数が一致するならチェック状態で表示される仕組みになっているだけだった。
以前も使ったことあるのに、普段コード書かないと忘れますね。テキストタイプとは違って一工夫が必要だったのですねーということを再認識。